1、Cookie
Yii2的Cookie主要是通過yii/web/Request和yii/web/Response進行操作的 ,通過/Yii::$app->response->getCookies()->add()添加Cookie,通過/Yii::$app->request->cookies讀取Cookie.
1)添加一個Cookie
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?php //第一種方法 $cookie = new /yii/web/Cookie(); $cookie -> name = 'smister' ; //cookie的名稱 $cookie -> expire = time() + 3600; //存活的時間 $cookie -> httpOnly = true; //無法通過js讀取cookie $cookie -> value = 'cookieValue' ; //cookie的值 /Yii:: $app ->response->getCookies()->add( $cookie ); //第二種方法 $cookie = new /yii/web/Cookie([ ‘name ' => ‘smister' , ‘expire' => time() + 3600, ‘httpOnly ' => true, ‘value ' => ‘cookieValue' ]); /Yii:: $app ->response->getCookies()->add( $cookie ); ?> |
2) 讀取一個Cookie
1
2
3
4
5
6
7
8
9
10
11
|
<?php $cookie = /Yii:: $app ->request->cookies; //返回一個/yii/web/Cookie對象 $cookie ->get(‘smister'); //直接返回Cookie的值 $cookie ->getValue(‘smister '); //$cookie[‘smister' ] 其實這樣也是可以讀取的 //判斷一個Cookie是否存在 $cookie ->has(‘smister'); //讀取Cookie的總數(shù) $cookie -> count (); //$cookie->getCount();跟count一樣 ?> |
3) 刪除Cookie
1
2
3
4
5
6
7
|
<?php $cookie = Yii:: $app ->request->cookies->get(‘smister'); //移除一個Cookie對象 /Yii:: $app ->response->getCookies()->remove( $cookie ); //移除所有Cookie,目前好像不太好使 /Yii:: $app ->response->getCookies()->removeAll(); ?> |
4) 注意
對Cookie進行增刪改時調(diào)用的response , 對Cookie讀取時使用的是Request
2、Session
Yii2的Session比較簡單 ,直接通過/Yii::$app->session進行操作就好了
1) 添加一個session
1
2
3
4
5
|
<?php $session = /Yii:: $app ->session; $session ->set( 'smister_name' , 'myname' ); $session ->set( 'smister_array' ,[1,2,3]); ?> |
2) 讀取一個session
1
2
3
4
5
|
<?php $session = /Yii:: $app ->session; //讀取一個Session $session ->get('smister_name); ?> |
3) 刪除Session
1
2
3
4
5
6
7
|
<?php $session = /Yii:: $app ->session; //刪除一個session $session ->remove(‘smister_name'); //刪除所有session $session ->removeAll(); ?> |
以上所述是小編給大家介紹的Yii2.0中的COOKIE和SESSION用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!