cookie 是用來在網站內溝通資料的方法,他存在網站和瀏覽器之間,也就是即使是同一台電腦,只要是不同瀏覽器就無法存取同一個 cookie。
很多網站會使用 cookie 來存取使用者的資料、登入資訊那些之類的,但他也有以下的限制:
- 目前每個瀏覽器最多只能儲存 300 個 cookie。
- 每個瀏覽器對單一網站只能儲存 20 的 cookie。
- 用戶端電腦的 cookie 只要關閉就沒辦法使用。
- 瀏覽器能儲存的 cookie 容量大約只有 4k。
由於 cookie 是存在用戶端,而且限制很多,所以考慮到安全性或者要儲存比較多的資料,就建議使用 session。
那要使用 cookie 的話,我們先來看該如何儲存 cookie,只要透過以下方法:
setcookie("變數名稱","變數值",["存活時間","路徑","網域"])
其中變數名稱和變數值是必填,存活時間可以指定這組 cookie 在多久之後要消失,路徑的話預設是你設定 cookie 的路徑,也就是說如果你是在 /folder 內,作用範圍預設就只會在 /folder 內,要全站都能使用的話就要把路徑設定為 "/"。
範例:
setcookie("name", "John", time()+3600, "/");
讀取 cookie 的話則是使用全域變數 $_COOKIE:
$_COOKIE["name"];
要刪除的話就把 cookie 的值變成空值就好了,最好連時間一起清掉:
setcookie("name", "", time()-3600);
cookie 的應用應該很簡單,有需要可以試試看。