程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP會話操作之cookie用法分析

PHP會話操作之cookie用法分析

編輯:PHP綜合

本文實例分析了PHP cookie用法。分享給大家供大家參考,具體如下:

會話技術:cookie

允許服務器端腳本在浏覽器存儲數據的技術,
允許服務器向浏覽器發送指令,用來管理存儲在浏覽器端的cookie數據
浏覽器如果存儲了某服務器所存儲的cookie數據,請求時會帶上cookie的數據

//增、改
setcookie(key,val);
//刪
setcookie(key,'');
//獲取浏覽器攜帶的cookie數據
$_COOKIE[key]

特征:

有效期:

默認是臨時cookie,也叫會話cookie,會話結束(浏覽器關閉)就清除。可以通過設置時間戳(1970年第一秒起)確定生命期,在浏覽器端時間以格林威治標准時間(GMT)作為標准

setcookie(key,val,time()+60);
//代表保存1分鐘,浏覽器會檢查是否失效
setcookie(key,val,0);
//默認會話
setcookie(key,'',time()-1);
//刪除cookie
setcookie(key,val,PHP_INT_MAX);
//邏輯上表示永久有效

有效路徑:

默認在當前路徑及其後代路徑有效。(路徑不是代碼所在文件的本地磁盤路徑,而是url請求的路徑關系)
不同路徑下同名的cookie可同時存儲於浏覽器,浏覽器會先查找當前目錄內有效的cookie,再向上查找,所有有效的都會攜帶至服務器,服務器端形成$_COOKIE時,會出現重寫效果,先出現的保留,
可以通過設置setcookie()第四個參數為'/'表示站點根目錄有效,即整站有效。有效路徑由浏覽器判斷,有效路徑設置時候服務器會告知浏覽器

setcookie(key,val,0,'/');

有效域:

默認cookie僅僅在當前域下有效

可以通過設置使cookie的有效域,擴展到某個一級域名下的所有子域

me.com      //一級域名
lig.me.com    //二級域名
bee.me.com    //二級域名
setcookie(key,val,0,'','me.com');

是否僅安全傳輸

默認不論浏覽器發出的是http和https協議都會將有效的cookie攜帶給服務器

可以通過設置第六個參數為true,表示激活僅安全傳輸,此時浏覽器發送請求時若為http協議,就不會發送這些設置為僅安全傳輸的cookie,apache需要加載openssl模塊才能使用https協議

setcookie(key,val,0,'','',true);

HTTPonly

默認浏覽器所存儲的腳本可以被其它腳本調用處理
通過設置第7個參數使得只能cookie只能在http請求中使用

setcookie(key,val,0,'','',false,true);

注意:

cookie值只能是字符串類型
cookie鍵可以寫成數組下標的形式
setcookie()前不能有輸出(output_buffering)

更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP中cookie用法總結》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php面向對象程序設計入門教程》、《PHP網絡編程技巧總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved