PHP cookie的使用
獲取
獲取瀏覽器在請求時攜帶的cookie資料,使用超全域性陣列變數, $_COOKIE完成對cookie的獲取。
其中每個 $_COOKIE 中的元素,對應一個cookie變數,元素的鍵就是cookie的key,元素的值就是cookie的value。
時間設定
通過cookie的第三個引數可以設定,有效期採用一個時間戳進行表示。
瀏覽器在向伺服器傳送請求時,會檢測到cookie是否有效,只有沒有過有效期的cookie的資料請求時,才會攜帶。
語法
特殊的有效期值:
- 0,預設的,表示會話週期
- Time()-1,刪除cookie的標準做法,setCookie(‘KEY’, time()-1)
- PHP_INT_MAX:邏輯上表示永久有效的cookie,到2038年。
有效路徑
cookie在當前目錄及其後代目錄有效。
Tip:路徑,不是程式碼所在檔案的路徑,而是瀏覽器請求的路徑。設定’/’可以保證站點所有路徑有效。
有效域
Cookie僅在當前域下有效。
可以通過設定,使cookie的有效域擴充套件到某個一級域名下的所有子域。
第五個引數可以做到。
setCookie('domain_name', 'in_test_kang', 0, '', 'kang.com');
是否僅安全傳輸
https://加密的http協議。
httponly屬性
開啟httponly為true,則不可以被其他指令碼訪問cookie,比如js指令碼。
測試如下:
<?php
setCookie('do_httponly', 'php34', 0, '', '', false, true);
setCookie('not_httponly', 'php34', 0, '', '', false, false);
?>
<?php
echo '<pre>';
var_dump($_COOKIE);
?>
<script type="text/javascript">
console.log(document.cookie);
alert(document.cookie);
</script>
在控制檯上只能看到:
語法
cookie值,僅僅支援字串型別。可以寫成陣列形式,但是它是兩個cookie變數。只是我們自己使用時用陣列方便而已。
$_COOKIE僅僅是儲存瀏覽器請求時攜帶的cookie。當前指令碼週期內,設定的cookie,還沒有攜帶,所以不會有效。下次執行指令碼時,則會攜帶cookie。
類似於header(),setCookie()前也不能存在任何的輸出。這是HTTP協議規定導致的。
相關文章
- 使用PHP實現跨域COOKIEPHP跨域Cookie
- php使用cookie完成登入記住密碼PHPCookie密碼
- 不使用 Cookie 的“Cookie”技術Cookie
- PHP中Session和Cookie的探究PHPSessionCookie
- PHP 回顧之 cookiePHPCookie
- Flask - Cookie的使用FlaskCookie
- jQuery的Cookie使用jQueryCookie
- PHP CURL中傳遞cookie的方法PHPCookie
- php中如何配置Cookie加密PHPCookie加密
- PHP 不得不提的 session 與 cookiePHPSessionCookie
- php在yii2中的cookie用法PHPCookie
- PHP中session和cookie的區別薦PHPSessionCookie
- Gin(八):cookie的使用Cookie
- Cookie的簡單使用Cookie
- cookie與session的使用CookieSession
- Cookie的建立使用 (轉)Cookie
- js-cookie.js的使用JSCookie
- 如何獲取Cookie並使用Cookie侵入Cookie
- php+mysql+cookie+模組化開發PHPMySqlCookie
- Laravel 之 Cookie 使用LaravelCookie
- python 網頁cookie的使用Python網頁Cookie
- node的Connect使用session、cookie的使用方法SessionCookie
- js中cookie的使用詳細分析JSCookie
- Cookie認識與使用Cookie
- 使用deflate壓縮CookieCookie
- 不用Cookie的“Cookie”技術Cookie
- web.py cookie使用之cookie設定與獲取WebCookie
- npm包:js-cookie的簡單使用NPMJSCookie
- localStorage,sessionStorage和cookie的區別及使用SessionCookie
- cookie的使用方法以及注意事項Cookie
- 如何使用angularjs操作cookieAngularJSCookie
- PHP 命令的使用PHP
- PHP session的使用PHPSession
- cookie、 sessionStorage 、localStorage之間的區別和使用CookieSession
- C# httpcookie asp.net中cookie的使用C#HTTPCookieASP.NET
- [php]如何讓cookie實現跨域問題的原始碼例項PHPCookie跨域原始碼
- 新增cookie、刪除cookie、清除cookieCookie
- [譯]使用Laravel訪問前端CookieLaravel前端Cookie