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一样 ?>
) 注意
對Cookie進行增刪改時調用的response , 對Cookie讀取時使用的是Request
2、Session
Yii2的Session比較簡單,直接透過/Yii::$app->session進行操作就好了
1) 增加一個session
<?php $cookie = Yii::$app->request->cookies->get(‘smister'); //移除一个Cookie对象 /Yii::$app->response->getCookies()->remove($cookie); //移除所有Cookie,目前好像不太好使 /Yii::$app->response->getCookies()->removeAll(); ?>
2) 讀取一個session
<?php $session = /Yii::$app->session; $session->set('smister_name' , 'myname'); $session->set('smister_array' ,[1,2,3]); ?>
3) 刪除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(); ?>
和SESSION用法,希望對大家有幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對PHP中文網的支持!
更多Yii2.0中的COOKIE和SESSION用法相關文章請關注PHP中文網!