本节课我们来学习一下系统提供的 Session 存储功能,以及二维和助手函数。
一.Session
1. 在使用 Session 之前,需要开启初始化,在中间件文件 middleware.php;
// Session 初始化\think\middleware\SessionInit::class
2. TP6.0 不支持原生$_SESSION 的获取方式,也不支持 session_开头的函数;
3. 直接使用::set()和::get()方法去设置 Session 的存取;
Session::set('user', 'Mr.Lee'); //设置 session,参数 1 名称,参数 2 值Session::get('user'); //读取 session,参数为名称Session::all() //读取 session 所有内容Request::session('user'); //读取 session,参数为名称Request::session(); //读取 session 所有内容
4. ::get()第二参数,可以设置当不存在值的时候,设置一个默认值;
Session::get('name') //name 不存在时返回 nullSession::get('name', '') //name 不存在时返回空
5. ::has()判断是否赋值,::delete()删除,::pull()取值后删除;
Session::has('user');Session::delete('user');Session::pull('user'); //不存在则返回 null
6. ::clear()清空整个 session;
Session::clear('');
7. ::flash()方法,设置闪存数据,只请求一次有效的情况,再请求会失效;
Session::flash('user','Mr.Lee');
二.二维和助手函数
1. 二维操作,就是对象和数组的调用方式,如下:
// 赋值(当前作用域)Session::set('obj.user','Mr.Lee');// 判断(当前作用域)是否赋值Session::has('obj.user');// 取值(当前作用域)Session::get('obj.user');// 删除(当前作用域)Session::delete('obj.user');
2. 助手函数,更加方便操作,如下:
//赋值session('user', 'Mr.Wang');//has 判断session('?user');//delete 删除session('user', null);//清理全部session(null);//输出echo session('user');
来源地址:https://blog.csdn.net/qq_34820433/article/details/130009367