當 Cookie被創建時,如果沒有設置它的有效時間,其 Cookie 文件會在關閉瀏覽器時自動的被刪除。如果要在關閉瀏覽器之前刪除保存在客戶端的 Cookie 文件,其方法有兩種,而這兩種方法和設置Cookie一樣,也是調用setcookie() 函數實現刪除 Cookie的動作: 第一種方式,省略setcookie() 函數的所有參數列,僅僅使用第一個參數 Cookie 識別名稱參數,來刪除指定名稱的 Cookie 資料;第二種方式,利用 setcookie() 函數把目標 Cookie 設置為 “已經過期” 的狀態。
1. 使用 setcookie() 函數把目標 Cookie 設置為 “已經過期” 的狀態來刪除 Cookie
刪除 Cookie 和 創建 Cookie 的方式基本類型,刪除 Cookie 也使用 setcookie() 函數。 刪除 Cookie只需要將 setcookie() 函數中的第二個參數設置為空值,將第三個參數 Cookie 的失效時間設置為 小于系統的當前時間即可。
下面就來通過代碼來將Cookie 的失效時間設置為當前時間減1秒。
setcookie("Cookie_name", "" , time()-1);
上面的代碼中,time()函數返回以秒表示的當前的時間戳,把當前時間減1秒就會得到過去的時間,從而刪除 Cookie。
2. 使用 setcookie() 函數把 Cookie 的生存時間默認設置為空, 則生存期限與瀏覽器一樣,瀏覽器關閉時 Cookie就會被刪除。只指定 Cookie 識別名稱一個參數,即刪除客戶端中這個指定名稱的 Cookie 資料。
setcookie("Cookie_name");
注意:把失效時間設置為0,也可以直接刪除 Cookie。
Cookie 的生命周期
如果 Cookie 不設定失效時間,就表示它的生命周期就為瀏覽器會話的期間,只要關閉瀏覽器,Cookie 就會自動消失。這種 Cookie 被稱為會話 Cookie ,一般不保存在硬盤上,而是保存在內存中。
如果設置了失效時間,那么瀏覽器會把 Cookie保存到硬盤中,再次打開瀏覽器時會依然有效,指導它的有效期到期后。
雖然 Cookie 可以長期保存在客戶端瀏覽器中,但也不是一成不變的。因為瀏覽器最多允許存儲 300 個Cookie文件,而且每個 Cookie 文件支持最大容量為4KB;每個域名最多支持20個 Cookie ,如果達到限制時,瀏覽器會自動地隨機刪除 Cookie 文件。
以上就是php中如何刪除Cookie的詳細內容,更多請關注 其它相關文章!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答