Моя интуиция говорит мне, что этот код не будет обновлять массив в сеансе. Это верно?
foreach ($_SESSION['accts'] as $acctId => $acct)
$acct['someNewKey'] = 'hi mom!';
// Later, another page...
foreach ($_SESSION['accts'] as $acct)
echo $acct['someNewKey'];
Будет ли этот вывод Привет мама!?
Нет, это не будет обновлять данные вашего сеанса, потому что вы изменяете здесь копию массива.
Попробуйте это вместо
foreach($_SESSION['accts'] as $key => $value) {
$_SESSION['accts'][$key]['someNewKey'] = 'hi mom!';
}
Других решений пока нет …