Session 配置
config/session.php 下面
return [
'driver' => env('SESSION_DRIVER', 'file'),
'lifetime' => 120, // 过期时间,默认为120分钟
'expire_on_close' => false,
'encrypt' => false,
'files' => storage_path('framework/sessions'),
'connection' => null,
'table' => 'sessions',
'lottery' => [2, 100],
'cookie' => 'laravel_session',
'path' => '/',
'domain' => null,
'secure' => false,
];
要修改driver
配置,需要去项目根目录下.env
文件修改其中的SESSION_DRIVER
选项。
driver 默认的位置是 storage/framework/sessions
lifetime
配置项用于设置Session有效期,默认为120分钟。
expire_on_close
配置项用于设置是否在浏览器关闭时立即让Session失效。
encrypt
配置项用于配置Session数据是否加密。
lottery
配置项用于配置回收Session存放位置。
cookie
配置项用于配置存放Session ID的Cookie名称,默认是laravel_session。
path
配置项用于配置存放Session ID的Cookie存放路径,默认为项目根目录。
domain
配置项用于配置存放Session ID的Cookie存放域名。
secure
配置项用于配置是否只有在HTTPS协议下发送Session ID到服务器。
Session 使用
session(['admin' => 'user']); // 存放session
$user = session('admin'); // 读取session
使用Request实例存取session
获取所有session
$all = $request->session()->all();
获取session
$user = $request->session()->get('admin');
一次性删除所有session
$user = $request->session()->flush();
一次性有效session
// 设置session
$request->session()->flash('admin', 'user');
// 读取session,一次有效
$user = session('admin);
下次继续生效
// 设置session
$request->session()->reflash('admin', 'user');
// 读取session,下次仍然有效
$user = session('admin);