GetIDForIdent liefert nicht immer false, wenn keine Variable mit dem Ident vorhanden ist

Durch den Hinweis von @dixi00 konnte ich es nun auf der Symbox reproduzieren.

Die Geschichte muss nun anders geschrieben werden. Es hat überhaupt nichts mit GetIDForIdent zu tun :slight_smile:

Es zeigte sich auf der Symbox (Linux), dass die Variable $VarID zwar als false (Boolean) geloggt wurde, aber die anschließende if ($VarID === false) Abfrage wurde übersprungen, was dazu führte, dass der Code weiterlief und erst später bei einer redundanten Prüfung abbrach. Auf einem Windows System funktionierte derselbe Vergleich hingegen korrekt.

Daraufhin habe ich auf der Symbox mal OpCache deaktiviert und damit war der Fehler weg. :thinking: Also muss bei OpCache etwas schieflaufen.

Sehr interessant ist dabei auch, dass

echo "PHP Version: " . PHP_VERSION . PHP_EOL;

auf der Symbox

PHP Version: 8.5.0

liefert.

Unter Windows erhalte ich dagegen

PHP Version: 8.5.3

Vermutlich sind mit 8.5.3 diese Optimierungsprobleme des OpCache bereits behoben worden.