php中cookie存的是什么,PHP中Cookie存在的作用和用法
1、使用$_COOKIE讀取Cookie
使用Session只能讓網站記住當前正在訪問的用戶,但有時網站還需要記住曾經訪問過的用戶,以便在用戶下次訪問時.提供個性化的服務。這就需要用到Cookie技術。Cookie能為網站和用戶帶來很多好處.如它可以記錄特定用戶訪問網站的次數、最后一次訪問時間、用戶在網站內的瀏覽路徑,以及使登錄成功的用戶下次自動登錄等。
也有一些Cookie的高級應用.如在購物網站瀏覽商品頁面時,該網站程序可以將用戶的瀏覽歷史記錄到Cookie中,當用戶下次再訪問時,網站根據用戶過去的瀏覽情況為用戶推薦感興趣的內容。
Cookie實際上是一個很小的文本文件.網站通過向用戶硬盤中寫入一個Cookie文件來標識用戶。當用戶下次再訪問該網站時,瀏覽器會將Cookie信息發送給網站服務器,服務器通過讀取以前寫入的Cookie文件中的信息,就能識別該用戶。
Cookie有兩種形式:會話Cookie和永久Cookie。前者是臨時性的,只在瀏覽器打開時存在(存儲在用戶機器的內存中),主要用來實現Session技術;后者則永久地存放在用戶的硬盤上并在有效期內一直可用。Cookie文件默認保存在“C:Documents and Settings登錄用戶名Cookies”文件夾中。
在PHP中,利用setcookie()函數可以創建和修改Cookie,以及設置Cookie的有效期;而使用$_COOKIE[]數組可以讀取Cookie變量的值。
1.創建和修改Cookie
創建Cookie最簡單的方法是使用setcookie( )函數。語法如下:
setcookie(name, value, expire, path, domain, secure)
其中,name用來定義一個cookie的變量名,value用來設置cookie變量值,expire用來定義cookie的有效期,而path、domain、 secure分別用來規定cookie的有效目錄、有效域名和是否采用http、來傳輸cookie.這3個參數不常用。除了name和value是必需的參數外.其他參數都是可選的。
例如設置了4個Cookie變量,變量名分別為“tmpcookie"、“userName"、“age"和“sex"。其中“tmpcookie”沒有設置過期時間,因此它僅僅是個會話Cookie,會話Cookie并沒有保存到文本文件中,關閉瀏覽器后,tmpcookie將立即失效。而其他3個Cookie均設置了過期時間,因此是永久Cookie.它們將在關閉瀏覽器一分鐘后失效。
永久Cookie變量均保存在了Cookie文件中,而會話Cookie沒有保存。Cookie變量名和變量值中如果含有中文或特殊字符,會自動經urlencode函數處理轉換成GB2312編碼形式。
如果要修改Cookie變量的值,可以用setcookie函數給變量重新賦值。
但修改Cookie時設置過期時間的參數不能省略.否則該Cookie會被修改成臨時Cookie。
提示:
①在使用setcookie函數前,不要有任何HTML內容輸出到瀏覽器,因為Cookie也是作為HTTP協議頭的一部分。否則setcookie()創建Cookie將失敗。
②cookie變量的值總是字符串數據類型。
③在PHP中,還能使用header函數設置cookie。
2.讀取Cookie
在客戶端寫入Cookie后,當用戶再次向網站發送HTTP請求時,就會將Cookie信息放在HTTP請求頭中一起發送給服務器,服務器會自動獲取HTTP請求頭中的Cookie信息,并將這些信息保存到$_COOKIE數組中。因此通過$_COOKIE可以讀取所有從客戶端傳過來的Cookie信息。
說明:由于Cookie存放在了硬盤中,因此即使重新啟動計算機后,再打開瀏覽器訪問.php也能讀取到Cookie(只要Cookie沒過期)。
3.Cookie數組
實際上,使用setcookie()函數還可以創建Cookie數組。
創建Cookie數組時,對于數組元素的下標可以是整數或字符串,但下標兩邊不要用引號(如user[id]不能寫成user ["id"]),因為PHP會自動給setcoo kie中的數組下標加引號的。
要讀取Cookie數組,可使用循環語句遍歷數組,也可單獨輸出數組元素。
4.刪除Cookie
有時用戶可能希望網站不再記住自己過去訪問的信息,這時可以刪除Cookie,刪除Cookie有兩種方法:一是將Cookie的變量值設置為空,并且不設置有效期(不設置有效期將刪除Cookie文件中的Cookie變量);二是將Cookie的有效期設置為過去的某個時間。不管使用哪種方法,瀏覽器接收到這樣的Cookie響應頭信息后,將自動刪除用戶硬盤中的Cookie文件和內存中的Cookie信息。
總結
以上是生活随笔為你收集整理的php中cookie存的是什么,PHP中Cookie存在的作用和用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php mysql log文件,mysq
- 下一篇: oracle中year类型吗,为什么表名