在 PHP 中,可以通過 session.cookie_lifetime
配置選項來設置 session ID 的過期時間。這個值是以秒為單位的,表示 cookie 的生命周期。默認情況下,這個值是 0,表示 cookie 僅在瀏覽器會話期間有效,當瀏覽器關閉時,cookie 就會被刪除。
要更改 session ID 的過期時間,可以在 php.ini 文件中設置 session.cookie_lifetime
的值,或者使用 ini_set()
函數在運行時動態設置。例如,要將 session ID 的過期時間設置為 30 分鐘,可以執行以下操作:
session.cookie_lifetime = 1800
ini_set()
函數動態設置:ini_set('session.cookie_lifetime', 1800);
注意:在調用 session_start()
函數之前,必須先設置這些選項。因此,建議在腳本開頭的適當位置設置這些選項。
另外,還可以使用 session_set_cookie_params()
函數來設置 session cookie 的屬性,包括過期時間、路徑、域名和安全標志。例如:
$lifetime = 1800; // 30 分鐘
session_set_cookie_params($lifetime, '/', '', false, true);
session_start();
這將設置 session cookie 的過期時間為 30 分鐘,同時設置了其他一些屬性,如路徑、域名和安全標志。在調用 session_start()
函數之前,必須先調用 session_set_cookie_params()
函數。