说明
简介
Request 对象放置着此次请求的全部信息.
Request类在:IlluminateHttpRequest
如:
请求方式(get/post)
请求参数 ($\_POST,$\_FILES)
请求路径 ( 域名后的部分 )
请求 cookie 等诸多信息 , 都存到的 Request
对象上
注:
不要使用var_dump
去打印 Request 对象,因为这样会占用系统非常大的资源,而是要使用 laravel 自带的 dd()
方法。
声明
首先引入 Request 类:
use Illuminate\Http\Request;
在方法中,声明第1个参数为 Request 类型参数,即可自动接收.
Request 作为方法的第1个参数出现.
另:如果方法中有路由器绑定的参数,不受影响.例:
Route::get('/del/{$id}');
public function del(Request $request , $id) {
// $id 参数虽然到第 2 个参数去了,但不会受影响.
}
获取输入值
如果你应用程序的表单含有一个 name
字段,你可以从传递的字段访问它的值,像这样:
$name = $request->name;
可以在 input
方法的第二个参数中传入一个默认值。当请求的输入数据不存在于此次请求时,就会返回默认值:
$name = $request->input('name', 'default');
如果是「数组」形式的输入数据,则可以使用「点」语法来获取数组:
$input = $request->input('products.0.name');
确认是否有输入值
要判断数据是否存在于此次请求,可以使用 has 方法。
if ($request->has('name')) {
//
}
获取部分输入数据
使用 only
及 except
方法获取输入数据的子集:
$input = $request->only(['username', 'password']);
$input = $request->only('username', 'password');
$input = $request->except(['credit_card']);
$input = $request->except('credit_card');
本文由 root 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Dec 27, 2019 at 04:00 pm