2014-11-04 47 views
0

我的直覺告訴我這段代碼不會更新會話中的數組。那是對的嗎?從會話獲取數組,更新它,然後如何更新會話?

foreach ($_SESSION['accts'] as $acctId => $acct) 
    $acct['someNewKey'] = 'hi mom!'; 

// Later, another page... 

foreach ($_SESSION['accts'] as $acct) 
    echo $acct['someNewKey']; 

請問這個輸出嗨媽媽!

+2

* 「將這個輸出喜媽!?」 * - 您告訴我們,是嗎? – 2014-11-04 03:36:36

+0

http://php.net/manual/en/control-structures.foreach.php – deceze 2014-11-04 03:38:10

+0

我的問題不是關於foreach的。我也不在乎多少次媽媽!是輸出> @ Arif_suhail_123你是什麼意思我正在創建另一個會話值? – 2014-11-04 03:40:52

回答

1

不,這不會更新您的會話數據,因爲您在這裏修改的是數組的副本。

試試這個

foreach($_SESSION['accts'] as $key => $value) { 
    $_SESSION['accts'][$key]['someNewKey'] = 'hi mom!'; 
} 
+0

謝謝!謝謝! – 2014-11-04 03:49:46