PHP中Cookie的使用詳解(簡單易懂)
PHP中Cookie的使用---添加/更新/刪除/獲取Cookie 及 自動填寫該用戶的用戶名和密碼和判斷是否第一次登陸
什么是cookie
服務(wù)器在客戶端保存用戶的信息,比如登錄名,密碼等
這些數(shù)據(jù)就像小甜餅一樣,數(shù)據(jù)量并不大,服務(wù)器端在需要的時候可以從客戶端讀取,保存在客戶端的瀏覽器緩存目錄下
① 當瀏覽器訪問,cookie.php時,服務(wù)器還以Set-Cookie:name=zxf;expire=Wed,21-Sep-2017 20:14 GMT會送http響應(yīng),當瀏覽器獲取到該消息后,就會保存該cookie的信息到本地磁盤
② 如果我們沒有時間(第三個參數(shù))
cookie不會保存到客戶端,當瀏覽器會話結(jié)束,cookie會失效
③ cookie保存的是字符串信息
④ 客戶端可以保存多個key=>val
⑤ cookie在保存過程中,會對中文進行urlencode編碼
cookie可以有多個key=>val,可以給不同的鍵值,制定不同的有效時間
代碼如下:xx.php
<?php
//添加cookie
setcookie("name","zxf",time()+3600);
//數(shù)組
/$arr = array(1,2,3);
$arr_str = serialize($arr);
setcookie("a",$arr_str,time()+3600);
//獲取cookie
var_dump($_COOKIE);
//更新cookie
setcookie("name","aaa",time()+3600);
//刪除cookie
setcookie("name","",time()-20);
//刪除所有
foreach ($_COOKIE as $key => $value) {
setcookie($key,"",time()-1);
}
echo "成功";
?>
如果你刪除的cookie的key=>val沒有刪除完,則這個cookie在客戶端保留,如果把這個網(wǎng)站的cookie都刪除的,則瀏覽器會把cookie文件刪除
判斷是否第一次登陸
<?php
//先判斷cookie里是否有上次的登錄信息
if(!empty($_COOKIE[‘lastVisit'])){
echo “你上次登陸的時間是”.$_COOKIE[‘lastViat'];
//更新時間
setcookie(“l(fā)astVisit”,”data(Y-m-d H:i:s)”, time()+3600);
}else{
//說明用戶是第一次登陸
echo”第一次登陸”;
//更新時間
setcookie(“l(fā)astViait”,”data(“Y-m-d H:i:s”)”, time()+3600);
}
?>
打開登陸界面的時候,自動填寫該用戶的用戶名和密碼
checklogin.php
//獲取用戶是否選中了保存id
if(!empty($_POST[‘cookie'])){
setcookie(“id”,$id,time()-100);
}else{
if(!empty($_COOKIE[‘id'])){
setcookie(“id”,$id,time()-10);
}
}
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
WordPress中用于獲取及自定義頭像圖片的PHP腳本詳解
這篇文章主要介紹了WordPress中用于獲取及自定義頭像圖片的PHP腳本編寫方法,分別為get_avatar()和alt標簽的使用,需要的朋友可以參考下2015-12-12
PHP file_get_contents 函數(shù)超時的幾種解決方法
在使用file_get_contents函數(shù)的時候,經(jīng)常會出現(xiàn)超時的情況,在這里要通過查看一下錯誤提示,看看是哪種錯誤,比較常見的是讀取超時,這種情況大家可以通過一些方法來盡量的避免或者解決。2009-07-07
php switch語句多個值匹配同一代碼塊應(yīng)用示例
switch 語句一行接一行地執(zhí)行(實際上是語句接語句)。開始時沒有代碼被執(zhí)行,下面有個示例,需要的朋友可以參考下2014-07-07
PHP函數(shù)preg_match_all正則表達式的基本使用詳細解析
以下是對PHP中的函數(shù)preg_match_all正則表達式的基本使用進行了詳細的分析介紹,需要的朋友可以過來參考下2013-08-08

