PHP Version 5.2.14 / Parse-Fehler: Syntaxfehler, unerwartete T_FUNCTION, erwartet ‘)’

Lesezeit: 1 Minute

Ich habe einen bestimmten Code, den ich mit PHP Version 5.2.14 verwenden möchte. Ist das nicht kompatibel?? Ich betreibe folgendes,

jailshell-3.2$ php -l /XYZ/functions.php

Und es gibt:

Parse-Fehler: Syntaxfehler, unerwartete T_FUNCTION, erwartet ‘)’ in /XYZ/functions.php in Zeile 2115 Fehler beim Parsen von /XYZ/functions.php

Der Code lautet:

2114    $range = array_map(
2115                function (DatePeriod $p) use ($vt2) {
2116               $res = array();

Ihr Code verwendet anonymous functions die in PHP 5.3 unterstützt wurden. Sie benötigen also PHP 5.3, um es zum Laufen zu bringen. Aktualisieren Sie die PHP-Installation Ihres Servers.

Anonyme Funktionen, auch Closures genannt, ermöglichen die Erstellung von Funktionen, die keinen bestimmten Namen haben.

Du benutzt anonyme Funktionen die verfügbar sind seit PHP 5.3.0.

Um dies zu beheben, können Sie Ihr PHP wie in einer anderen Antwort vorgeschlagen aktualisieren.

Alternativ können Sie die Funktion auch außerhalb definieren array_map und verwenden Sie dann diesen Funktionsnamen im Aufruf von array_map

Ab dem PHP-Handbuch Anonyme Funktionen:

Hinweis: Anonyme Funktionen sind seit PHP 5.3.0 verfügbar.

vor 5.3.0 gehen Sie wie folgt vor:

$range = array_map( "name_of_function_to_call", $myArray );

PHP Version 5214 Parse Fehler Syntaxfehler unerwartete T FUNCTION erwartet
gianebao

Ich denke, die Lambda-Stil-Funktion ist in 5.2 noch nicht implementiert

benutzen create_function oder erstellen Sie einfach die Funktion und übergeben Sie sie an die Funktionsname in array_map.

.

362900cookie-checkPHP Version 5.2.14 / Parse-Fehler: Syntaxfehler, unerwartete T_FUNCTION, erwartet ‘)’

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy