3 Stimmen

Kürzlich aktualisiertes PHP 5.4 von 5.3 stürzt ab, wenn eine Variable gleich einer bedingten Verknüpfung verwendet wird

Ich verwende Apache 2.4 mit PHP 5.4.

Ich führe die folgenden Schritte aus:

# retrieve caller name
$calledby = debug_backtrace(); print_r($calledby);
$caller = (strlen($calledby[1]['class'])) ? $calledby[1]['class'] : $calledby[0]['class'];
# arguments are required
if (!func_num_args()) { return; }
# fill variables with argument contents if exists
$variables = (func_num_args() == 0) ? NULL : (is_array(func_get_arg(0)) ? func_get_arg(0) : NULL);

innerhalb einer privaten Methode einer Klasse.

Wenn ich die Zeilen $caller = und $variables = auskommentiere, funktioniert es.

Wenn ich meinen Code wie folgt ändere, funktioniert er auch (AS DEFINED)

if (strlen($calledby[1]['class']))  $caller = $calledby[1]['class'];
else                                $caller = $calledby[0]['class'];

Sollte ich einen Fehlerbericht einreichen oder mache ich etwas falsch mit einer neuen 5.4 Syntax-Macke?

Vielen Dank im Voraus!

[UPDATE] Ich habe die Datei über die Befehlszeilenschnittstelle ausgeführt, und das Skript hat das gewünschte Ergebnis geliefert.

0voto

Userbn Punkte 242

Ich habe es mit der php 5.4-Konfiguration versucht und hatte keine Probleme. Sie sollten das apache / php log sehen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X