WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Har php fått psykiska störningar? (https://www.wn.se/forum/showthread.php?t=34435)

crazzy 2009-01-13 23:01

Vad fan betyder det här?
Kod:

Parse error: syntax error, unexpected T_VARIABLE, expecting T_PAAMAYIM_NEKUDOTAYIM in /home/webXXXXX/domains/******.com/public_html/search.php on line 25
Jag slipper det retarderade felmeddelandet om jag plockar bort den här loopen:
Kod:

        $kws=explode('%',$q);
        foreach($kws as $kw) {
            if(empty($kw))continue;
            $text=str_replace($kw,"<span class=\"HighLight\">{$kw}</span>",$text);
        }

Men det händer ingenting om jag bara kommenterar bort raderna inuti loopen...

Kanske skulle donera en hundring till php och be de piffa till sina felmeddelanden?

Weaver 2009-01-13 23:07

PAAMAYIM_NEKUDOTAYIM är hebreiska och betyder två kolon. I den kodsnutten du visar verkar inte problemet finnas. Kan det vara att du accessar en statisk variabel utan ::?

crazzy 2009-01-13 23:09

Två frågor...

1. Varför får jag felmeddelanden på engelska kombinerat med hebreiska?

2. Statisk?

jonny 2009-01-13 23:11

Du har gjort något klantigt ;). Unexpected T_VARIABLE brukar kunna dyka upp med strängar som inte är avslutade, felaktiga referenser till variabler etc.

Weaver 2009-01-13 23:13

1) De som lade grunden till Zend motorn som exekverar PHP kanske kom från Israel, vad vet jag :) Säkert en legacy konstant som hängt med från början.

2)
class A {
public static $foo
}

A::foo <- access av statisk variabel

crazzy 2009-01-13 23:17

Jag använder inte klasser i php. Jag tycker implementationen i php suger. C++'s variant = najs.

Och den gnälliga raden är:
Kod:

foreach($kws as $kw) {
Jag hittar då inga fel där?

Weaver 2009-01-13 23:20

Problemet ligger säkert inte på den raden eftersom den är helt korrekt definierad. testa att initiera kws till:
$kws = array('keyword1', 'keyword2');
istället för att se om variablen q är problemet.

Annars testa att döpa om kws till kws2 och kw till kw2 för att verifiera att det inte sker en namnkrock nånstans.

crazzy 2009-01-13 23:24

När jag skulle editera loopens kontrollsektion så dök det upp en förbannad massa skräptecken överallt. Ctrl+K på den raden och skriva om den gjorde susen. Fan ta idioterna som tyckte vi skulle ha tio miljoner olika character encodings....

emilv 2009-01-14 00:04

Citat:

Originally posted by Weaver@Jan 14 2009, 00:13
1) De som lade grunden till Zend motorn som exekverar PHP kanske kom från Israel, vad vet jag Säkert en legacy konstant som hängt med från början.
Zend är ett israeliskt företag.


Alla tider är GMT +2. Klockan är nu 03:33.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson