php中設定session的生命週期

伊谢尔伦
發布: 2016-11-26 14:27:20
原創
1800 人瀏覽過

PHP中,Session變數保存在伺服器端(預設以檔案格式儲存),而SessionID以cookie形式儲存在客戶端。

銷毀session的方法有兩種:

第一種是透過程式

session_destory()方法清除所有session
unset(session['x'])来清除指定的session['x']。
登入後複製

第二種是透過關閉瀏覽器

关闭后会直接清除所有session。
登入後複製

在Cookie沒有停用的情況下,session ID是儲存在Cookie中的。

想要改變session生命週期,可以透過設定Cookie中sessionID的有效時間來實現。設定session生命週期的也有兩種方法:

第一種:setcookie()

$lifetime=60;//保存1分钟
 session_start();
 setcookie(session_name(),session_id(),time()+$lifetime,"/");
登入後複製

直接用setcookie設定session id的生命週期。

第二種:session_set_cookie_params()

$lifetime=60;//保存1分钟
session_set_cookie_params($lifetime);
session_start();
session_regenerate_id(true);
登入後複製

session_regenerate_id();方法用來改變目前session_id的值,並保留session中陣列的值。參數預設為false,如果設定為true則改變session_id的值,並清空目前session數組。


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!