這篇文章主要介紹了Yii框架中用response保存cookie,用request讀取cookie的原理,結合實例形式分析了Request.Cookies與Response.Cookies的區別及相關使用技巧,需要的朋友可以參考下
本文實例講述了Yii框架中用response保存cookie,用request讀取cookie的原理。分享給大家供大家參考,具體如下:
在學習cookie的時候,相信很多人和我有一樣的疑惑?爲什麼保存cookie要用response,讀取cookie卻用request呢?
參考https://www.imooc.com/qadetail/188079
cookie是web服務器爲了保存一些用戶數據而創建保存在本地的一個加密文件,這些過程是由服務器操作,所以使用response。讀取cookie數據是客戶端行爲,所以用request。這樣理解可能好一點。
再者
Request.Cookies
創建的Cookie只能用於後臺不能用於HTML的前臺
Response.Cookies
操作過的Cookie,所有方法獲取到的都是被更新過的值,也就是說Response.Cookies
是修改所有容器中的Cookie的值;
如果還是不太明白,我們可以通過實踐,使用request->cookies
刪除一個cookie數據。
$cookies = \Yii::$app->response->cookies; $array_cookies=array('name'=>'user','value'=>'doubly'); $cookies->add(new Cookie($array_cookies)); $cookies = \Yii::$app->request->cookies; $cookies->remove('user'); echo $cookies->getValue("user");
訪問網頁可以發現Yii框架報錯
簡單的說,request->cookies
不能對cookie數據進行修改等操作。
更多關於Yii相關內容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧彙總》
希望本文所述對大家基於Yii框架的PHP程序設計有所幫助。