PHP中Cookie的使用詳解


PHP中Cookie的使用---添加/更新/刪除/獲取Cookie 及 自動填寫該用戶的用戶名和密碼和判斷是否第一次登陸

什么是cookie

服務器在客戶端保存用戶的信息,比如登錄名,密碼等

這些數據就像小甜餅一樣,數據量並不大,服務器端在需要的時候可以從客戶端讀取,保存在客戶端的瀏覽器緩存目錄下

①  當瀏覽器訪問,cookie.php時,服務器還以Set-Cookie:name=zxf;expire=Wed,21-Sep-2017 20:14 GMT會送http響應,當瀏覽器獲取到該消息后,就會保存該cookie的信息到本地磁盤

②  如果我們沒有時間(第三個參數)

cookie不會保存到客戶端,當瀏覽器會話結束,cookie會失效

③  cookie保存的是字符串信息

④  客戶端可以保存多個key=>val

⑤  cookie在保存過程中,會對中文進行urlencode編碼

cookie可以有多個key=>val,可以給不同的鍵值,制定不同的有效時間

代碼如下:xx.php

<?php
//添加cookie
setcookie("name","zxf",time()+3600);
//數組

/$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在客戶端保留,如果把這個網站的cookie都刪除的,則瀏覽器會把cookie文件刪除

判斷是否第一次登陸

<?php

//先判斷cookie里是否有上次的登錄信息

if(!empty($_COOKIE[‘lastVisit'])){

  echo “你上次登陸的時間是”.$_COOKIE[‘lastViat'];

//更新時間

setcookie(“lastVisit”,”data(Y-m-d H:i:s)”, time()+3600);

}else{

//說明用戶是第一次登陸

echo”第一次登陸”;

//更新時間

setcookie(“lastViait”,”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);

}
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM