通過前面的章節,我們了解了設置cookie的函數,但是我們卻發現php中沒有刪除Cookie的函數,在PHP中刪除cookie也是采用setcookie函數來實現。
setcookie('test', '', time()-1);
可以看到將cookie的過期時間設置到當前時間之前,則該cookie會自動失效,也就達到了刪除cookie的目的。之所以這么設計是因為cookie是通過HTTP的標頭來傳遞的,客戶端根據服務端返回的Set-Cookie段來進行cookie的設置,如果刪除cookie需要使用新的Del-Cookie來實現,則HTTP頭就會變得復雜,實際上僅通過Set-Cookie就可以簡單明了的實現Cookie的設置、更新與刪除。
了解原理以后,我們也可以直接通過header來刪除cookie。
header("Set-Cookie:test=1393832059; expires=".gmdate('D, d M Y H:i:s \G\M\T', time()-1));
這里用到了gmdate,用來生成格林威治標準時間,以便排除時差的影響。
刪除test的cookie值。
setcookie('test', '', time()-1);
請驗證,完成請求
由于請求次數過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報