PHP - 会话控制
第12章?會話控制
?
學習要點:
1.Cookie的應用
2.Session會話處理
?
HTTP(超文本傳輸協議)定義了通過萬維網(WWW)傳輸文本、圖形、視頻和所有其他數據所有的規則。HTTP是一種無狀態的協議,說明每次請求的處理都與之前或之后的請求無關。雖然這種簡化實現對于HTTP的普及做出了卓越的貢獻,但對于希望創建復雜的Web應用程序的開發人員來說,這點有點困擾。為了解決這個問題,出現了一種在客戶端機器上存儲少量信息(cookie)。
由于cookie大小限制、數量及其他原因,開發人員又提出了一種解決方案:session會話處理。
?
一.Cookie的應用
?
設置cookie:setcookie()函數可以在客戶端生成一個cookie文件,這個文件可以保存到期時間、名稱、值等。
?
創建cookie
<?php
setcookie('name','Lee',time()+(7*24*60*60));?
?>
參數1:cookie名稱
參數2:cookie值
參數3:cookie過期時間
?
讀取cookie
<?php
echo?$_COOKIE['name'];
?>
?
刪除cookie
<?php
setcookie('name','');
setcookie('name','Lee',time()-1);
?>
?
使用Cookie的限制
1、必須在HTML文件的內容輸出之前設置;
2、不同的瀏覽器對Cookie的處理不一致,且有時會出現錯誤的結果。
3、限制是在客戶端的。一個瀏覽器能創建的Cookie數量最多為30個,并且每個不能超過4KB,每個WEB站點能設置的Cookie總數不能超過20個。
?
二.Session會話處理
?
在使用session會話處理,必須開始session,使用session_start()開始會話。
?
創建session并讀取session
<?php
session_start();
$_SESSION['name']?=?'Lee';
echo?$_SESSION['name'];
?>
?
判斷session是否存在
<?php
session_start();
$_SESSION['name']?=?'Lee';
if?(isset($_SESSION['name']))?{
echo?$_SESSION['name'];
}
?>
?
刪除session
<?php
session_start();
$_SESSION['name']?=?'Lee';
unset($_SESSION['name']);
echo?$_SESSION['name'];
?>
?
銷毀所有session
<?php
session_start();
$_SESSION['name']?=?'Lee';
$_SESSION['name2']?=?'Lee';
session_destroy();
echo?$_SESSION['name'];
echo?$_SESSION['name2'];
?>
?
轉載于:https://www.cnblogs.com/KTblog/p/4956334.html
總結
以上是生活随笔為你收集整理的PHP - 会话控制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【算法】快速排序/数组第K小的元素
- 下一篇: app配置智能硬件的解决方案