Bal*_*ald 22 laravel laravel-5
网址: http://localhost/?v=
码:
Route::get('/', ['as' => 'home', function()
{
dd(Request::has('v'));
}]);
Run Code Online (Sandbox Code Playgroud)
输出: false
到底是怎么回事?这是一个错误还是我做错了什么?
luk*_*ter 51
Request::has()
将检查项目是否实际设置.这里没有空字符串.
你要找的是:Request::exists()
!
Route::get('/', ['as' => 'home', function()
{
dd(Request::exists('v'));
}]);
Run Code Online (Sandbox Code Playgroud)
tot*_*dli 37
升级到Laravel 5.5或更高版本.他们改变了这一点,现在它按照你原先的预期工作.
在Laravel 5.5升级指南中,我们阅读以下内容:
该
has
方法即使输入值为空字符串,该
$request->has
方法现在true
也 将返回null
.$request->filled
添加了一种新方法,该has
方法提供了该方法的先前行为.
该$request->exists
方法仍然有效,它只是一个别名$request->has
.
$request->exists
:确定请求是否包含给定的输入项密钥.$request->has
:确定请求是否包含输入项的非空值.$request->exists
:别名 $request->has
$request->has
:确定请求是否包含给定的输入项密钥.$request->filled
:确定请求是否包含输入项的非空值.如果你点击上面的命令,你可以检查出的源代码,并看到他们真的只是改名exists
来has
,has
来filled
,然后别名exists
来has
.
您可能想检查一下。因为$request->has()
method及其it属性可以提供对请求源的访问。
可以使用$request->has('username')
它可以检查<input type="text" name="username" />
用户名属性是否确实存在,或者params / .query字符串是否在全局请求中实际具有该键。
归档时间: |
|
查看次数: |
35894 次 |
最近记录: |