首頁  >  文章  >  後端開發  >  什麼是cookie.session ?他們之間的區別是? (詳細介紹)

什麼是cookie.session ?他們之間的區別是? (詳細介紹)

慕斯
慕斯原創
2021-06-07 13:50:042474瀏覽

上篇文章為大家介紹了《為什麼PHP會有安全性問題?本質以及安全問題三要素是什麼? 》,本文繼續介紹什cookie.session ?他們之間的差別是?一起來研究吧! ! !

什麼是cookie.session ?他們之間的區別是? (詳細介紹)

什麼是cookie、session ?

  • #cookie :儲存在用戶端的一-小段文本,用於伺服器辨識使用者的一種技術。

  • session :基於cookie,只是資料不儲存在客戶端,改為儲存在伺服器端,用戶端只儲存一個id ,也稱為session id ,伺服器可以根據這個session . id找到該用戶的資訊。

我們了解http協議是一種無狀態的協議,當我們瀏覽網站的時候,後端是如何知道用戶端的資訊的?因此,我們就可以使用以上兩種方式(cookie、session)

cookie、session 的差異是什麼?

  具體來說cookie機制採用的是在客戶端保持狀態的方案,而session機制採用的是在伺服器端保持狀態的方案.同時我們也看到,由於採用伺服器端保持狀態的方案在客戶端也需要保存一個標識,所以session機制可能需要藉助於cookie機制來達到保存標識的目的,但實際上它還有其他選擇.
   cookie機制.正統的cookie分發是透過擴展HTTP協定來實現的,伺服器透過在HTTP的回應頭中加上一行特殊的指示以提示瀏覽器按照指示產生相應的cookie.然而純粹的客戶端腳本如JavaScript或VBScript也可以產生cookie.而cookie的使用是由瀏覽器按照一定的原則在後台自動發送給伺服器的.瀏覽器檢查所有存儲的cookie,如果某個cookie所聲明的作用範圍大於等於將要請求的資源所在的位置,則把該cookie附在請求資源的HTTP請求頭上發送給伺服器.
   cookie的內容主要包括:名字,值,過期時間,路徑和網域.路徑與網域一起構成cookie的作用範圍.若不設定過期時間,則表示這個cookie的生命期為瀏覽器會話期間,關閉瀏覽器視窗,cookie就消失.這種生命期為瀏覽器會話期的cookie被稱為會話cookie.會話cookie一般不存儲在硬碟上而是保存在內存裡,當然這種行為並不是規範規定的.若設定了過期時間,瀏覽器就會把cookie保存到硬碟上,關閉後再次打開瀏覽器,這些cookie仍然有效直到超過設定的過期時間.儲存在硬碟上的cookie可以在不同的瀏覽器進程間共享,比如兩個IE視窗.而對於保存在記憶體裡的cookie,不同的瀏覽器有不同的處理方式

##(cookie)具體程式碼為例:

<?php 
//setcookie(&#39;tittle&#39;,&#39;答案很长,我准备用一生的时间来回答,你准备要听了吗?&#39;);
echo $_COOKIE[&#39;tittle&#39;];
?>

程式碼解釋:

先設定一個cookie函數,可以使用setcookie函數,當我們設定完cookie函數以後要如何把他取出來?由程式碼可知,我們可以使用$_cookie[],但是當我們去執行此程式碼,結果顯示,沒有此標題(程式碼結果如下所示),當我們註解掉setcookie時,執行程式碼顯示出,我們所輸入的結果,(如下所示),

什麼是cookie.session ?他們之間的區別是? (詳細介紹)

什麼是cookie.session ?他們之間的區別是? (詳細介紹)

#(session)程式碼:

<?php 
//setcookie( &#39;title&#39;, &#39;www. php.cn&#39;);
//echo $_ COOKIE[ &#39;title&#39;];
// session
session_start();
$_SESSION[ &#39;user&#39;] = array( &#39;uid&#39;=>1, &#39;name&#39;=>&#39;张三&#39; , &#39; age&#39;=>18);
echo &#39;<pre class="brush:php;toolbar:false">&#39; ;
print_r($_SESSION[ &#39;user&#39;]);
?>

程式碼結果如下所示:

什麼是cookie.session ?他們之間的區別是? (詳細介紹)

推薦學習:《

PHP影片教學

以上是什麼是cookie.session ?他們之間的區別是? (詳細介紹)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn