在 Laravel 中设置会话变量

moh*_*abk 1 php laravel laravel-5

在普通 PHP 中,我可以使用以下代码设置会话变量;

$_SESSION['blog'] = array(
    "email" => $_POST['email'],
    "password" => $password,
    "firstname" => $row ['firstName'],
    "lastname" => $row ['lastName'],
    "id" => $row ['id']
);
Run Code Online (Sandbox Code Playgroud)

我怎样才能在laravel. 仅供参考,我不是在谈论默认会话名称,例如PHPSESSIDlaravel_session。我的网站部分有多个会话变量,例如webblog职业”,我将它们命名为与上面的代码相同的名称,并且能够单独检查和访问它们。因此,一个用户可以同时拥有所有三个会话变量,但针对网站的不同部分。

lag*_*box 5

您可以这样做的一种方法:

$vars = [
    "email" => $email,
    "password" => $password,
    "firstname" => $row['firstName'],
    "lastname" => $row['lastName'],
    "id" => $row['id']
];

session()->put('blog', $vars);
Run Code Online (Sandbox Code Playgroud)

Laravel 文档 - 会话

更新:检查会话变量是否存在:

session()->has('blog'); // bool
Run Code Online (Sandbox Code Playgroud)

更新:获取会话变量“blog”中包含的元素

session('blog.id'); // using the dot notation
Run Code Online (Sandbox Code Playgroud)