三個概念
在解釋這四個驗證規則之前,需要明晰三個概念 —— 空值(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
