获取请求
要通过依赖注入的方式来获取当前 HTTP 请求的实例,你应该在控制器方法中类型提示 Illuminate\Http\Request
。传入的请求的实例将通过 服务容器 自动注入:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller
{
/**
* 储存一个新用户。
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
$name = $request->input('name');
//
}
}
通过路由闭包获取请求
你也可以在路由闭包中类型提示 Illuminate\Http\Request
类。服务容器在执行时会自动将当前请求注入到闭包中:
use Illuminate\Http\Request;
Route::get('/', function (Request $request) {
//
});
使用 input
方法可以从整个请求中获取输入数据(包括查询字符串),而 query
方法可以只从查询字符串中获取输入数据:
$name = $request->query('name');