2016-11-01 3 views
0

Ich habe ein interessantes Problem, wenn einer der Ordner im Namespace in einem "t", "s" oder "n" endet hat dann einen Unterordner, danach wird es nicht mehr parsen.PHP Namespace Kuriositäten-Ordner mit der Endung "t", "s", "n"

EX:

namespace DDM\Components\Widget\List; 

Dies verursacht: Parse error: syntax error, unexpected 'List' (T_LIST), expecting identifier (T_STRING) in <...filepath...>

Gleiche Ordner geschieht für die anderen zwei Buchstaben enden zuvor erwähnt.

Ich bin auf einem Windows-System, sondern die Dateien werden von einem Debian (jessie) Box bedient, läuft PHP Version 5.6.27-0 + deb8u1 durch nginx und PHP-FPM

aktualisieren

Wenn ich versuche, den gesamten Namespace mit einem \ voranzutreiben, erkennt phpstorm es nicht mehr als Syntaxfehler, aber der PHP-Compiler gibt immer noch den gleichen Fehler wie oben.

All "L" name Unterordner hat dieses Ergebnis

Wie Jay List ein PHP reserviertes Wort ist jedoch darauf hingewiesen, alle "L" Ordnername Ergebnisse in einem anderen Fehler mit:

Fatal error: Undefined constant 'DDM\Components\Widget\Lists' 

Alle Vorschläge sind willkommen.

Antwort

1

Dies ist, weil List ist ein reserviertes Schlüsselwort und reservierte Schlüsselwörter sind nicht erlaubt, auch in Namespaces.

PHP Reserved Keywords

+0

Jedes Wort begeht mit L scheint die gleichen Ergebnisse '... Widget \ Lothername zu geben;' – Chausser

+0

@Chausser Namespaces wird nur in 'PHP 5.3 +' unterstützt. Ist deine PHP-Version korrekt? –

+0

im laufenden PHP 5.6 – Chausser

Verwandte Themen