从会话中获取数组,更新它,然后如何更新会话?

时间:2014-11-04 03:35:37

标签: php arrays session pass-by-reference pass-by-value

我的直觉告诉我这段代码不会在会话中更新数组。这是对的吗?

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

// Later, another page...

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

这个输出嗨妈妈好吗?

1 个答案:

答案 0 :(得分:1)

不,这不会更新你的会话数据,因为你在这里修改的是数组的副本。

试试这个

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