本文實(shí)例講述了Yii框架中用response保存cookie,用request讀取cookie的原理。分享給大家供大家參考,具體如下:
在學(xué)習(xí)cookie的時(shí)候,相信很多人和我有一樣的疑惑?為什么保存cookie要用response,讀取cookie卻用request呢?
參考https://www.imooc.com/qadetail/188079
cookie是web服務(wù)器為了保存一些用戶數(shù)據(jù)而創(chuàng)建保存在本地的一個(gè)加密文件,這些過(guò)程是由服務(wù)器操作,所以使用response。讀取cookie數(shù)據(jù)是客戶端行為,所以用request。這樣理解可能好一點(diǎn)。
再者
Request.Cookies
創(chuàng)建的Cookie只能用于后臺(tái)不能用于HTML的前臺(tái)
Response.Cookies
操作過(guò)的Cookie,所有方法獲取到的都是被更新過(guò)的值,也就是說(shuō)Response.Cookies
是修改所有容器中的Cookie的值;
如果還是不太明白,我們可以通過(guò)實(shí)踐,使用request->cookies
刪除一個(gè)cookie數(shù)據(jù)。
$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");
訪問(wèn)網(wǎng)頁(yè)可以發(fā)現(xiàn)Yii框架報(bào)錯(cuò)
簡(jiǎn)單的說(shuō),request->cookies
不能對(duì)cookie數(shù)據(jù)進(jìn)行修改等操作。
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- 解析PHP的Yii框架中cookie和session功能的相關(guān)操作
- Yii2.0中的COOKIE和SESSION用法
- Yii框架操作cookie與session的方法實(shí)例詳解
- Yii框架學(xué)習(xí)筆記之session與cookie簡(jiǎn)單操作示例
- yii操作session實(shí)例簡(jiǎn)介
- Yii框架用戶登錄session丟失問(wèn)題解決方法
- Yii2下session跨域名共存的解決方案
- yii操作cookie實(shí)例簡(jiǎn)介
- Yii中的cookie的發(fā)送和讀取
- YII2自動(dòng)登錄Cookie總是失效的解決方法
- Yii2中cookie用法示例分析
- Yii框架Session與Cookie使用方法示例