詳細關於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