將標題重寫為:將"Array as session variable"翻譯成中文為"使用陣列作為會話變數"
P粉833546953
P粉833546953 2023-08-21 18:07:56
0
2
594
<p>在PHP中,是否可以將陣列設定為會話變數? </p> <p>情況是我有一個表格(第一頁),其中一些單元格有連結到特定頁面。下一頁將有一個名字列表(第二頁,我想將其保存在會話數組中),並帶有相應的複選框。提交此表單後,它將導向一個交易頁面(第三頁),其中已發布的複選框的值將保存在資料庫中對應的名字下。現在,如果我回到第一頁並點擊另一個儲存格,會話數組會包含新的名字清單還是舊的名字清單? </p>
P粉833546953
P粉833546953

全部回覆(2)
P粉318928159

是的,你可以將陣列放入會話中,例如:

$_SESSION['name_here'] = $your_array;

現在你可以在任何頁面上使用$_SESSION['name_here'],但是在使用任何會話函數之前,請確保在程式碼中加入session_start() 行,所以你的程式碼應該要類似:

session_start();
 $_SESSION['name_here'] = $your_array;

可能的範例:

#
session_start();
 $_SESSION['name_here'] = $_POST;

現在你可以在任何頁面上這樣取得欄位值:

echo $_SESSION['name_here']['field_name'];

至於你問題的第二部分,除非你分配了不同的數組數據,否則會話變數將保留在那裡:

$_SESSION['name_here'] = $your_array;

會話的生存時間在 php.ini 檔案中設定。

更多資訊請點擊這裡

#
P粉166779363

是的,PHP支援將陣列作為會話變數。請參考此頁面的範例。

至於您的第二個問題:一旦設定了會話變量,除非您更改它或unset它,它將保持不變。因此,如果第三個頁面不更改會話變量,它將保持與第二個頁面更改之前相同。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板