namespace app\controllers;
use yii\web\Controller;
class HelloController extends Controller{
public function actionIndex(){
//获取session应用组件
$session = \Yii::$app->session;
//判断session是否开启
if(!$session->isActive){
$session->open();
}
//设置session
//$session->set('username', '张三');
//获取session
//echo $session->get('username');
//删除session
//$session->remove('username');
//把$session当数组使用,之所以可以当数组来使用是因为session组件继承了PHP提供的接口ArrayAccess接口,这个接口的作用是把对象转成数组
//设置
$session['username'] = '张三';
//获取
echo $session['username'];
//删除
unset($session['username']);
}
}
session的识别原理:
浏览器的cookie中有个名字为sessionid的cookie,这个sessionid的cookie的值是服务器端存放session内容的文件的名字,浏览器会把这个cookie传递给服务器,服务器就可以知道要对那个session文件进行编辑,编辑完成后还可把session内容返回给相应的浏览器。