溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php中cookie和session的區(qū)別與簡(jiǎn)易用法

發(fā)布時(shí)間:2020-05-28 18:02:34 來(lái)源:網(wǎng)絡(luò) 閱讀:1498 作者:2char 欄目:web開發(fā)

一、區(qū)別
1、Cookie是完全保存在客戶端。當(dāng)客戶端禁止cookie時(shí)將不能再使用;對(duì)服務(wù)端壓力較小;可以指定生存周期;安全性差。
2、Session是存放在服務(wù)端的。但session id是存放在客戶端的cookie中的,但php的session存放方法是多樣化的,這樣就算禁用cookie一樣可以跟蹤;服務(wù)端壓力較大;關(guān)閉瀏覽器后,session失效;安全性較好。
二、cookie
1、設(shè)置。

    Setcookie(string name, string value, int expire,string path, string domain, int secure)

    name是cookie變量名稱標(biāo)識(shí)(必須),
    value是cookie變量的初始值(必須),
    expire 表示該cookie變量的有效時(shí)間(時(shí)間點(diǎn),為空時(shí)cookie不會(huì)保存到客戶端,當(dāng)瀏覽器關(guān)閉,cookie會(huì)失效),
    path 為該cookie變量的相關(guān)路徑,
    domain 表示cookie變量的網(wǎng)站,在此域名內(nèi)cookie有效,
    secure 則需在 https 的安全傳輸時(shí)才有效。 
    例:SetCookie("name", "value",time()+3600, "/test", ".test.com", 1)

2、讀取。echo $_COOKIE["cookiename"];類似與POST和GET。

3、刪除 。SetCookie("cookiename", "")或SetCookie("cookiename", "value" , time()-1);

注:
1、必須在HTML文件的內(nèi)容輸出之前設(shè)置;
2、不同的瀏覽器對(duì)Cookie的處理不一致;
3、一個(gè)瀏覽器能創(chuàng)建的Cookie數(shù)量最多為30個(gè),并且每個(gè)不能超過(guò)4KB,每個(gè)WEB站點(diǎn)能設(shè)置的Cookie總數(shù)不能超過(guò)20個(gè)(未驗(yàn)證);
4、首次訪問(wèn)頁(yè)面時(shí)設(shè)置cookie,第二次訪問(wèn)時(shí)才能讀取cookie值,因?yàn)閏ookie是保存在客戶端,需由客戶端傳至服務(wù)端才能讀取。
解決方法:設(shè)置cookie后,echo "<script>location.href='當(dāng)前頁(yè)面'</script>";

三、Session的配置

1、session_start();                    //初始化session.需在文件頭部

2、$_SESSION[name]=value;  //配置Seeeion

3、echo $_SESSION[name];    //使用session

4、isset($_SESSION[name]);   // 判斷

5、unset($_SESSION[name]);   //刪除

6、session_destroy();             //刪除所有session
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI