分享一下,php框架yii操做session,cookie使用方法詳情,簡單的彙總整理。php
1、在Yii框架中使用cookie的筆記:html
1.設置cookie:web
1.
$cookie
=
new
CHttpCookie(
'xiguajun_cookie'
,
'this is xiguajun cookie'
);
2.
$cookie
->expire = time()+60*60*24*30;
//有限期30天
3.
Yii::app()->request->cookies[
'xiguajun_cookie'
]=
$cookie
;
//發佈cookie
2.讀取cookie:數據庫
1.
$cookie
= Yii::app()->request->getCookies();
2.
echo
$cookie
[
'xiguajun_cookie'
]->value;
3.銷燬cookie:php框架
1.
$cookie
= Yii::app()->request->getCookies();
2.
unset(
$cookie
[
'xiguajun_cookie'
]);
2、在Yii框架中使用session的筆記:
一、在Yii框架中,不須要像標準PHP代碼那樣使用session_start(),在Yii框架的入口引入的配置文件中,autoStart 屬性缺省被設置爲true。因此,雖然沒有使用session_start(),你仍然可使用$_SESSION全局變量,可是爲了安全,最好使用Yii框架session封裝的Yii::app->session:
二、設置session變量:安全
1.
Yii::app()->session[
'xiguajun'
]=
'xiguajun_value'
;
三、讀取session變量:服務器
1.
echo
Yii::app()->session[
'xiguajun'
];
三、移除session變量:cookie
1.
unset(Yii::app()->session[
'xiguajun'
]);
四、獲取用戶的session ID:網絡
1.
Yii::app()->session->sessionID
五、當用戶退出登陸(logout),你須要消除痕跡,可以使用:session
1.
Yii::app()->session->clear() ;移去全部session變量,
2.
Yii::app()->session->destroy();移去存儲在服務器端的數據。
PS:更爲複雜一點的使用時如何配置你的session
配置項可設在 protected/config/main.php的components中:
1.
'session'
=>
array
(
2.
'autoStart'
=>false,
//默認爲true
3.
'sessionName'
=>
'Site Access'
,
4.
'cookieMode'
=>
'only'
,
5.
'savePath'
=
'/path/to/new/directory'
,
6.
),
將session保持在數據庫的設置:
1.
'session'
=>
array
(
2.
'class'
=>
'system.web.CDbHttpSession'
,
3.
'connectionID'
=>
'db'
,
4.
'sessionTableName'
=>
'actual_table_name'
,
5.
),
西瓜君我的博客提醒您:好東西你們要收藏哦,以便後續開發使用。