0
非常簡單的實驗。我有一個index.php
其中包含:如何使PHP會話持久化,並使用自定義會話ID?
if (!isset($_SESSION)) {
session_id(random_string());
session_start();
}
echo session_id();
random_string()
只返回一個隨機的20個字符A-Z,A-Z,0-9字符串。
在重新加載該頁面,它會永遠產生一個新的會話ID,因爲沒有那個if
語句之前session_start()
一個電話,和(恢復)$_SESSION
超級全球不存在。
但是,如果我把到session_start()
呼叫在腳本的頂部,我失去了我的機會來指定自定義會話ID,因爲設置自定義ID有調用session_start()
之前發生。
我只是無法弄清楚這一點。雞/蛋問題。那麼,我如何成功實現一個自定義會話ID,這將保持頁面加載之間的超級全局活動?
PHP會話是臭名昭着的不可靠的。最好爲會話使用數據庫。 – khuderm
那麼,你想保持相同的會話ID,直到瀏覽器關閉或每個用戶? – Perumal