三个概念
在解释这四个验证规则之前,需要明晰三个概念 —— 空值(empty)、输入数据(input data)、验证字段(filed under validation)。
空值
在 Laravel 中,一个字段满足下面任何一条都将被视为空值:
-
null
. - 空字符串
' '
。 - 空数组
[ ]
或空countable
对象。 - 无路径的上传文件。
输入数据&验证字段
已注册功能为例:
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
public function register(Request $request)
{
$this->validator($request->all())->validator;
}
public function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|string|max:255',
'email' => 'required|string|unique:users|email|max:255',
'password' => 'required|string|min:6|confirmed',
]);
}
$request->all()
就是输入数据,Validator::make
里的 name
、email
和 password
就是验证字段。
验证规则
required
验证字段必须出现在输入数据中,不能为空。
present
验证字段必须出现在输入数据中,可以为空。
filled
验证字段可不在输入数据中,
当验证字段出现在数据中时,不能为空。
nullable
验证字段的值可以为 null
。
参考链接
https://laravel-china.org/docs/laravel/5.4/validation#available-validation-rules
网友评论