Konstantenproblem verursacht durch PHP-Version
Ich bin gerade auf ein Problem gestoßen, eine Konstante ist in der Klasse definiert:
const USER = ['aa', 'bb', 'cc'];
Es liegt kein Fehler vor, wenn die oben genannten Konstanten in einer statischen Funktion in der Klasse aufgerufen werden. Alle Webseiten der Website können normal geöffnet werden. Beim Hochladen konnten die Seiten der Website nicht normal geöffnet werden. Beim Überprüfen des Fehlerprotokolls wurde ein Fehler gefunden:
Arrays are not allowed in class constants
Zu diesem Fehler hat Baidu das Problem gefunden:
Nachdem der Fehler behoben und online gestellt wurde, normalisierte sich alles wieder.
Aber ich habe mich gefragt, warum lokal kein Fehler gemeldet wurde. Nach einigem Debuggen vermutete ich, dass es sich um ein Problem mit der PHP-Version handelte, also habe ich die folgende Funktion verwendet, um die lokalen und Online-PHP-Versionen zu überprüfen:
phpversion()
Überprüfen Sie, ob die Versionsnummer 5.6.12 ist, und die Online-Version ist 5.5.12. Baidu hat festgestellt, dass Version 5.6 Verbesserungen an den Konstanten aufweist.
Schlussfolgerung:
1. Die Versionskonstanten von 5.6 können Arrays sein, aber die Versionskonstanten vor 5.6 können kein Array sein;
2. Die unterschiedlichen Status zwischen lokal und online werden durch unterschiedliche PHP-Versionen verursacht.
Empfohlenes Tutorial: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonPHP verwendet einen Const-Fehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!