Laravel 8 获取数据
Laravel 中处理 Session 数据有两种主要方法:全局辅助函数 session
和通过一个 Request
实例。首先,我们来看看通过控制器方法类型提示一个 Request
实例来访问 session。控制器方法依赖项会通过 Laravel 服务容器 实现自动注入:
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class UserController extends Controller
{
/**
* 展示指定用户的简介
*
* @param Request $request
* @param int $id
* @return Response
*/
public function show(Request $request, $id)
{
$value = $request->session()->get('key');
//
}
}
当你从 Session 获取值时,你还可以传递一个默认值作为 get
方法的第二个参数。如果 Session 中不存在指定的键,便会返回这个默认值。若传递一个闭包作为 get
方法的默认值,并且所请求的键并不存在时,get
方法将执行闭包并返回其结果:
$value = $request->session()->get('key', 'default');
$value = $request->session()->get('key', function () {
return 'default';
});