# ThinkPhP5 视频教程(三十一讲):session的使用 #### Session初始化 大多数情况,我们不需要手动进行Session初始化操作。ThinkPHP5会在第一次调用Session类的时候按照配置的参数自动初始化和开启Session(如果auto_start设置为true的话),例如,我们在应用配置中添加如下配置: ~~~ 'session' => [ 'prefix' => 'think', 'type' => '', 'auto_start' => true, ], ~~~ 无需任何操作就可以直接调用Session类的相关方法,例如: ~~~ Session::set('name','thinkphp'); Session::get('name'); ~~~ #### 读取Session 建议的读取Session数据的方法是通过Request请求对象的session方法,例如: ~~~ namespace app\index\controller; use think\Request; class User { public function index(Request $request) { echo $request->session('user_name'); // 读取二维数组 echo $request->session('user.name'); } } ~~~ > Session类的get方法只支持最大二维数组的读取,而Request对象的session方法可以支持任意级别的二维数组获取。 #### 助手函数 ~~~ // 赋值(当前作用域) session('name', 'thinkphp'); // 赋值think作用域 session('name', 'thinkphp', 'think'); // 判断(当前作用域)是否赋值 session('?name'); // 取值(当前作用域) session('name'); // 取值think作用域 session('name', '', 'think'); // 删除(当前作用域) session('name', null); // 清除session(当前作用域) session(null); // 清除think作用域 session(null, 'think'); ~~~ #### 模板输出 果需要在模板中输出Session数据,可以使用下面的方法: ~~~ {$Request.session.user_name} ~~~ ~~~[youku] XMjc0MjM3NDcyMA =856x523 ~~~ Demo下载地址: http://pan.baidu.com/s/1nuVCVFF 视频播放密码: 3110 [需要TPshop商城源码的可前往TPshop官网免费下载安装](http://www.tp-shop.cn)