[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Inhalt der Konstante __FILE__ ändert sich nicht
Seite 1 von 1

Inhalt der Konstante __FILE__ ändert sich nicht

Verfasst: 25. Jul 2010, 14:04
von Koala
Hallo

Mir ist bei meinem System etwas aufgefallen, dass ich bisher noch nie bemerkt habe (dieses Problem ist von Redaxo völlig unabhängig): die Konstante __FILE__ ändert nach Datei-/Verzeichnisumbenennung nicht ihren Inhalt.

Ein ganz einfacher Test.
In einer Datei gibt es nur folgende Zeile:

Code: Alles auswählen

var_dump(__FILE__);
Nennen wir die Datei mal /test/test1.php
Wird sie im Browser aufgerufen sieht das Ergebnis so aus
string '/test/test1.php' (length=16)
Jetzt ändere ich den Dateinamen in test2.php. Das Ergebnis ist nun
string '/test/test1.php' (length=16)
Es steht weiterhin test1.php da, obwohl es eigentlich test2.php sein müsste.
Egal was ich nun wie oft ändere, ob Verzeichnis oder Dateiname, der ausgegebene Pfad ist immer /test/test1.php. Erst wenn ich die Datei öffne und auch ohne etwas darin zu änderen wieder speichere, erst dann wird die Dateinamensänderung korrekt ausgegeben.

Dies betrifft aber nur die Ausgabe über den Browser.
Der gleiche Test mit PHP-CLI liefert immer ein korrektes Ergebnis.

Hat jemand eine Erklärung für dieses Verhalten? Ich weiß grad nicht, wo ich noch nach der Ursache suchen könnte.
Im PHP-Bugtracker bin ich dazu noch nicht fündig geworden.


Mein System:
PHP 5.2.6-1+lenny8 with Suhosin-Patch 0.9.6.2 (cli) (built: Mar 14 2010 08:14:04)
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with Xdebug v2.0.3, Copyright (c) 2002-2007, by Derick Rethans
with Suhosin v0.9.31, Copyright (c) 2007-2010, by SektionEins GmbH
Server version: Apache/2.2.9 (Debian)

Verfasst: 26. Jul 2010, 10:34
von zehbaeh
Stell doch mal ein: clearstatcache(); vor den Dump.

Verfasst: 26. Jul 2010, 20:59
von Koala
zehbaeh hat geschrieben:Stell doch mal ein: clearstatcache(); vor den Dump.
Das hatte ich schon versucht, obwohl es im Manual nicht als betroffen vermerkt ist.

Ich hatte inzwischen auch mal den Xdebug und Suhosin deaktiviert. Aber das brachte auch keine Änderung.