怎么在Yii框架中对cookie与session进行操作

怎么在Yii框架中对cookie与session进行操作?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

cookie操作

设置cookie

//获取response->cookies组件
$cookies = \Yii::$app->response->cookies;
//设置cookie数组
$array_cookies=array('name'=>'user','value'=>'doubly');
//添加cookie数据
$cookies->add(new Cookie($array_cookies));

删除cookie

$cookies->remove('user');

读取cookie

$cookies = \Yii::$app->request->cookies;
echo $cookies->getValue("user");

细心的人可能发现读取cookie和前面的组件略有不同,前面都是response->cookies,而读取却用了request->cookies,这是为什么呢?可以参考前面一篇文章Yii框架中用response保存cookie,用request读取cookie的原理

session操作

在Yii框架中对session的操作,我们是通过一个叫session组件的东西,首先我们需要获取session组件。

$session = \Yii::$app->session;

获取了session组件之后,想要对session进行操作,我们首先需要判断session是否启用

if ($session->isActive){
  echo "session已经开启";
}else{
  $session->open();
}

session已经开启了之后,我们就可以设置和使用session数据了,首先是设置session数据

$session->set("user","张三");

读取session数据也很简单

$user = $session->get("user");

同样的,还有删除session数据

$session->remove("user");

此外,我们还可以将session当做一个数组进行操作

//设置session
$session['user'] = '张三';
//读取session
$user = $session['user'];
//删除session
unset($session['user']);

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。