程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> Yii2.0中的COOKIE和SESSION用法

Yii2.0中的COOKIE和SESSION用法

編輯:PHP綜合

1、Cookie

Yii2的Cookie主要是通過yii/web/Request和yii/web/Response進行操作的 ,通過/Yii::$app->response->getCookies()->add()添加Cookie,通過/Yii::$app->request->cookies讀取Cookie.

1)添加一個Cookie

<?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

<?php
$cookie = /Yii::$app->request->cookies;
//返回一個/yii/web/Cookie對象
$cookie->get(‘smister');
//直接返回Cookie的值
$cookie->getValue(‘smister'); //$cookie[‘smister'] 其實這樣也是可以讀取的
//判斷一個Cookie是否存在
$cookie->has(‘smister');
//讀取Cookie的總數
$cookie->count();//$cookie->getCount();跟count一樣
?>

3) 刪除Cookie

<?php
$cookie = Yii::$app->request->cookies->get(‘smister');
//移除一個Cookie對象
/Yii::$app->response->getCookies()->remove($cookie);
//移除所有Cookie,目前好像不太好使
/Yii::$app->response->getCookies()->removeAll();
?>

4) 注意

對Cookie進行增刪改時調用的response , 對Cookie讀取時使用的是Request

2、Session

Yii2的Session比較簡單 ,直接通過/Yii::$app->session進行操作就好了

1) 添加一個session

<?php
$session = /Yii::$app->session;
$session->set('smister_name' , 'myname');
$session->set('smister_array' ,[1,2,3]);
?>

2) 讀取一個session

<?php
$session = /Yii::$app->session;
//讀取一個Session
$session->get('smister_name);
?>

3) 刪除Session

<?php
$session = /Yii::$app->session;
//刪除一個session
$session->remove(‘smister_name');
//刪除所有session
$session->removeAll();
?>

以上所述是小編給大家介紹的Yii2.0中的COOKIE和SESSION用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved