使用Request类:php
<?php
namespace App\Http\Controller;
use Illuminate\Http\Reuest;
class UserController extends Controller
{
public function store(Request $request){
$name = $request->input('name');
}
}
获取请求路径
//path()返回请求的路径信息。当传入的请求的目标地址是 ```http://domain.com/foo/bar```,那么 path 将会返回```foo/bar```;
$uri = $request->path();
//ls() 能够验证传入的请求路径和指定的规则是否匹配。使用这个方法时也能够传递一个```*```字符串做为通配符
if($request->ls('admin/*')){
//
}
获取请求的URL
//Without Query String...
$url = $request->url();
// With Query String
$url = $request->fullUrl();
获取HTTP请求方式
$method = $request->method();
if($request->isMethod('post')) {
//some code...
}
获取输入
all()
以数组的形式获取到全部的输入数据
$input = $request->all();
- 处理获取数据
$data = array_filter($request->input(),'not_null'); #删除null项
$data = array_map('null_to_space',$request->input()); #null项转为空字符
- 获取指定数据
$name = $request->input('name'); //获取input的name值
$name = $request->input('name', ''); //获取name值,若是请求的输入值不存在请求上,就返回默认值 ‘’
$name = $request->input('product.0.name'); //获取数组中的数据
- 肯定是否存在输入值
返回true或false
if($request->has('name')) {
//some code...
}
has参数为数组是,肯定是否存在数组中全部给定的值:
if($request->has(['name', 'email'])){
//some code...
}
- 肯定请求中是否存在值而且不为空,使用filled方法:
if($request->filled('name')){
//some code...
}
旧输入
- 将输入闪存至Session
Illuminate\Http\Request 的 flash 方法会将当前输入的数据存进 session 中,以便用户下次发送请求到应用程序以前使用它。
$request->flash();
$request->flashOnly(['username', 'email']);
$request->flashExcept('password');
- 闪存后的重定向
有时候须要将输入闪存到 session 而后重定向到上一页,这时只须要在重定向方法后加上 withInput 便可
return redirect('form')->withInput();
return redirect('form')->withInput(
$request->except('password');
);
- 获取旧输入
$username = $request->old('username');
<input type="text" name="username" value="{
{old('username')}}">
cookies
- 获取Cookie
$value = $request->cookie('name');