首頁 > 頭條 > 主體

php中的session使用方法

无忌哥哥
發布: 2020-07-25 11:59:21
原創
3793 人瀏覽過

詳細關於php session的使用方法請見:php session 會話專題

 * session會話

 * session與cookie非常像,只是把用戶資料保存到了伺服器上頁已

 * 而查詢的鑰匙卻仍在瀏覽器上,用一個特殊的cookie保存著

 * 這個特殊的鑰匙叫:PHPSESSID(會話ID)

//必須在所有的html程式碼輸出到瀏覽器之前開啟會話

//session_start()會傳送一個32位元的16進位的PHPSESSID

//開啟會話之前絕對不能有:echo,print,include,甚至空行等之類的語句

session_start();
登入後複製

//一旦開啟成功,我們就可以把用戶的會話資訊保存到伺服器上了

//會話的所有操作都是透過超全域變數$_SESSION來實現

$_SESSION['user_name'] = 'admin';
$_SESSION['user_id'] = 1;
登入後複製

//在伺服器上的tmp/php/32位元對應PHPSESSID的文字文件

//user_name|s:5:"admin";user_id|i:1;

//語法: 變數名稱|類型:值;每個session變數之間用分號隔開,字串類型會有長度提示

//會話存取與cookie非常像,直接使用$_SESSION數組

echo $_SESSION['user_name'];
登入後複製

//更新

$_SESSION['user_name'] = 'peter';
echo $_SESSION['user_name'];
登入後複製

//刪除

//1.刪除單一session變數

unset($_SESSION['user_id']);
登入後複製

//2.刪除全部session變數,清除伺服器上的session檔案內容

$_SESSION = [];
登入後複製

//3.清除所有使用者的session,將伺服器上的session檔案刪除

session_destroy();
登入後複製

//如果想徹底的刪除session,瀏覽器上的PHPSESSID對應的cookie也應該一併刪除

#//執行的時候,前面不能再有設定語句了,否則會重新再產生一個PHPSESSID

setcookie('PHPSESSID', '', time()-3600);
登入後複製

//總結:正確且安全徹底的刪除session應該包括以下三步:

$_SESSION = [];  //清空当前用户的所有会话信息
session_destroy(); //清空当前域名下所有的会话信息
setcookie('PHPSESSID', '', time()-3600); //删除保存在客户端上的会话id
登入後複製
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板