2
foreach循環如何影響會話變量?PHP - foreach影響會話值
session_start();
$_SESSION[test] = "Session content";
echo $_SESSION[test].'<br />';
$test_array = array("test", "array", "something", "array end");
foreach($test_array as $test){
echo $test.'<br />';
}
echo '<br />Session content after foreach: '.$_SESSION[test].'<br />';
當我在一些虛擬主機上運行這個代碼時,它的輸出是OK的。
Session content
test
array
something
array end
Session content after foreach: Session content
但只有在第一次執行(創建會話時)。當我執行此代碼第二次(已創建會話)的輸出如下:
Session content
test
array
something
array end
Session content after foreach: array end
我不知道怎麼才能變量$測試影響$ _SESSION [測試]。
+1:很好!我不理解如何描述問題可能發生,並沒有考慮register_global - 在設置register_global = On之後,我再現了問題^^ ;;如果可以的話,我會給你另一個+1「你不應該使用註冊全局變量」 –
+1來查看正在發生的事情。不加引號的數組鍵是一個紅鯡魚。 –
+1我不知道register_globals,謝謝解釋! – dusan