Der Martin: unexpected T_VARIABLE

Beitrag lesen

Hallo,

Wenn die UTF-8-BOM korrekt platziert ist, dann steht sie als die ersten drei Bytes im Dokument und damit steht sie vor dem <?php. Sie kann so nicht für den Syntaxfehler im PHP-Teil verantwortlich sein.

korrekt.

Das vorliegende Problem kann sein, dass andere Whitespace-Zeichen an Stellen gestanden haben, an denen Leerzeichen hätten stehen sollen. Das hätte auch eine falsch platzierte BOM sein können.

How so? Die Meldung "Unexpected T_VARIABLE" besagt, dass der PHP-Interpreter ein $-Zeichen gefolgt von einem gültigen Bezeichner für eine Variable gefunden hat, das aber an einer Stelle, wo dieses Token nicht hätte vorkommen dürfen. Es wäre also IMO immer noch spannend zu wissen, was die vermeintliche PHP-Datei von fritz wirklich enthielt. Aber das werden wir wohl nicht mehr herausfinden.

Er schrieb ja, dass er das aus einem HTML-Dokument im Browser herauskopiert habe. Klar, da kommen alle möglichen Formen von Whitespace in Frage, aber die würden für PHP nicht wie eine Variable aussehen.

Der Tipp, ohne BOM zu speichern, hilft für andere Fälle. Ausgaben inklusive BOMs, die vor einem <?php stehen, verhindern das Senden von HTTP-Headern. Die Fehlermeldung dazu ist aber eine andere als ein PHP-Syntax-Fehler.

Ja, stimmt.

Ciao,
 Martin

--
Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
Heißes Wasser kann man immer gebrauchen.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(