Laravel 5.5 Session

Session

$value = $request->session()->get('key');

$value = $request->session()->get('key', 'default');

$value = $request->session()->get('key', function() {
    return 'default';
});
// 全局 Session 辅助函数
    $value = session('key');  // 从session中获取数据...

    $value = session('key', 'default');  // 指定默认值...
    
    session(['key' => 'value']);  // 存储数据到session...
// 获取所有 Session 数据
    $data = $request->session()->all();
// 判断 Session 中是否存在指定项
    if ($request->session()->has('users')) {
        // has 方法可用于检查数据项在 Session 中是否存在。如果存在并且不为 null 的话返回 true
    }
    
    if ($request->session()->exists('users')) {
        // 要判断某个值在 Session 中是否存在,即使是 null 的话也无所谓,则可以使用 exists 方法。如果值存在的话 exists 返回 true
    }
// 存储数据
    $request->session()->put('key', 'value');  //通过调用请求实例的 put 方法
    session(['key' => 'value']);  // 通过全局辅助函数 session
    
    (推送数据到数组 Session)
        $request->session()->push('user.teams', 'developers');
    
    (获取&删除数据)
        $value = $request->session()->pull('key', 'default');  // pull 方法将会通过一条语句从 Session 获取并删除数据

// 一次性数据
    $request->session()->flash('status', '登录Laravel学院成功!');
    
    $request->session()->reflash();

    $request->session()->keep(['username', 'email']);
// 删除数据
    $request->session()->forget('key');  // 移除指定数据
    
    $request->session()->flush();  // 移除所有数据
// 重新生成 Session ID
    $request->session()->regenerate();

猜你喜欢

转载自blog.csdn.net/qq_37910492/article/details/84544744
今日推荐