[英]Update a specific Session Variable
我正在使用此代碼輸出所有已注冊的會話變量-
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
exit();
這就是我得到的
Array
(
[language] => english
[navigation] => navigationHistory Object
(
[path] => Array
(
[0] => Array
(
[get] => Array
(
)
[post] => Array
(
)
)
[1] => Array
(
[get] => Array
(
)
[post] => Array
(
[number] => XXXXXXXXXXXX
[x] => 62
)
)
)
)
)
我想將[1]數組中的數字變量從XXXXXXXX ...更新為555555。
$_SESSION['number'] = "55555555555555";
但這最終只是在數組外部使用555 ..值創建了一個名為number的新會話變量,而沒有更新正確的會話變量。 能做到嗎?
這是一個嵌套的數組/對象,因此您必須遍歷要設置的數組變量:
$_SESSION['navigation']->path[1]['post']['number'] = "55555555555555";
嘗試這個:
$_SESSION['navigation']->path[1]['post']['number']=123;
我本人對此經常感到困惑,花了我一些時間才能弄清楚這些很長的家伙。 一個讓您自己弄清楚這些事情的真正簡單方法是執行以下操作:在代碼的最后,您有一個print_r:
print_r($_SESSION);
猜測層次結構中的下一個級別是什么:
print_r($_SESSION['navigation'])
運行該命令,如果出現錯誤,請嘗試其他操作。 如果可行,您應該看到那個家伙的印記,並且您會“接近”您的價值。 一旦看起來不錯,請附加另一個屬性:
print_r($_SESSION['navigation']->path);
那樣有用嗎? 好的,繼續。 並一直執行此操作,直到您完全得到想要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.