首頁 >後端開發 >PHP問題 >php cookie無法刪除嗎

php cookie無法刪除嗎

WBOY
WBOY原創
2022-06-15 16:49:552278瀏覽

在PHP中,cookie可以刪除;可以將cookie的有效期設定為當前時間以前來刪除,因為刪除cookie需要確保該cookie的有效期在過去,才能夠觸發瀏覽器的刪除機制,語法為「setcookie("Cookie_name", "" , time()-1);」。

php cookie無法刪除嗎

本文操作環境:Windows10系統、PHP8.1版、Dell G3電腦

php cookie無法刪除嗎

#php cookie可以刪除

要刪除cookie需要確保它的失效期是在過去,才能觸發瀏覽器的刪除機制。

刪除一個cookie的方法就是把這個cookie的有效期設定為當前時間以前

#刪除Cookie

當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影片教學

以上是php cookie無法刪除嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn