Mailinglisten-Archive |
Hallo Dejan Am 17.02.2007 um 00:21 schrieb Dejan Spasic: > Am Freitag, den 16.02.2007, 14:45 +0100 schrieb Hans Egg: > >> $a = $_SESSION[a] >> >> Nun stelle ich fest, dass eine Veränderung von $a auch $_SESSION[a] >> beeinflusst. Ich hätte erwartet, dass dies nur geschieht, wenn ich >> eine Referenz zuweise: >> >> $a = &$_SESSION[a] > > Das ist auch richtig... Wenn es wirklich so der Fall sein sollte, dann > müsste sich auch der Wert in der Variable $a auch ändern wenn du es in > der SESSION änderst. Ist es auch so...? Welche PHP Version > verwendest du > und auf welches OS ist diese Verhalten zu beobachten? PHP 5.1 auf www.bfq.ch/biofotoquiz/phpinfo.php PHP 5.2 XAMPP auf Windows PHP 5.0.5 XAMPP auf Mac > Kann man von dem relevante Quellcode mehr sehen? www.bfq.ch/biofotoquiz/varTest.php Hier und auf meinem Testserver mit PHP 5.2. funktioniert IMHO alles korrekt. Es verhält sich anscheinend nur der Testserver mit PHP 5.0.5 unerwartet. Beim ersten Aufruf sieht das so aus: session_start(); $a = 'a'; $_SESSION['a'] = $a; a = a session = Array ( [a] => a ) $_SESSION['a'] = 'b'; a = a session = Array ( [a] => b ) $a = 'c'; a = c session = Array ( [a] => b ) Beim weiteren Aufrufen dieser Seite ergibt sich dann dies: session_start(); $a = 'a'; $_SESSION['a'] = $a; a = a session = Array ( [a] => a ) $_SESSION['a'] = 'b'; a = b session = Array ( [a] => b ) $a = 'c'; a = c session = Array ( [a] => c ) Ob das nun ein Bug in PHP 5.0.5 oder in XAMPP für Mac ist? ("Die Mac OS X und Solaris Versionen befinden sich noch in der Entwicklung. Benutzung auf eigene Gefahr.") Gruß, Hans
php::bar PHP Wiki - Listenarchive