Ungeklärter Syntaxfehler mit logischem ODER (||)

8

Ich arbeite mit NetBeans für Mac, und ich verwende CakePHP (obwohl ich nicht glaube, dass das Framework etwas damit zu tun hat) in einem Shared Hosting unter Linux. Das ist kein großes Problem, aber es ist frustrierend.

Ich frage mich, warum ich das nicht einfach tun kann:

%Vor%

Die Fehlermeldung, die ich bekomme, lautet:

%Vor%

Warum gibt es einen Syntaxfehler? Ich kann es nicht sehen.

Ich kann das ohne Probleme machen:

%Vor%

Ich kann das auch ohne Probleme machen (kein Leerzeichen um || ):

%Vor%

Aber wenn ich Leerzeichen um den || Operator setze, hört es auf zu arbeiten. Oder besser - und dies ist der verwirrendste Teil - manchmal funktioniert nicht mehr, wenn ich Leerzeichen um den || Operator setze und manchmal nicht.

Ich dachte, das könnte ein Fehler in Netbeans 7.4 sein, aber als ich die Warnung von NetBeans ignorierte und versuchte, den Code trotzdem auszuführen, gab mir PHP den gleichen Fehler.

Was passiert hier?

    
Dropial 14.05.2014, 17:02
quelle

1 Antwort

14
  

Ich arbeite mit NetBeans für MAC

Wann ist ein Leerzeichen kein Leerzeichen?

Wenn es ein nicht-brechender Raum ist !

Die Absicht ist:

%Vor%

Aber was tatsächlich in der Quelldatei ist, ist fast sicher:

%Vor%

( on stack overflow wird nicht sein, aber ich wette, dass es in der Quelldatei ist).

Bei einem Mac ist das Problem (mit meinem eigenen Tastaturlayout, aber ich gehe davon aus, dass es in Ihrem Fall ähnlich ist):

%Vor%

Also wegtippen, mit der Sequenz "||" ist es sehr einfach, dass die alt-Taste gedrückt bleibt, wenn die Leertaste gedrückt wird und: voilà Sie bekommen unerwartete "wat" -Syntaxfehler, die auf den Nennwert keinen Sinn - bis Sie erkennen, was das Problem ist.

Beispiel:

%Vor%     
AD7six 14.05.2014, 19:57
quelle

Tags und Links