如何在 Laravel 中驗證輸入欄位的值不為 NULL?


要驗證資料,您可以使用 Validation 類。驗證有助於驗證資料以及向用戶顯示錯誤訊息。

示例 1

在下面的示例中,使用了 make() 方法。第一個引數是要驗證的資料,第二個引數是應用於 data : name 的規則。

$validator = Validator::make( array('name' => 'Disha'), array('name' => 'required|min:5') );

根據以上內容,分配的名稱為 Disha。根據規則,名稱是必填的,並且所需的最小字元數為 5。

示例 2

在下面的示例中,我們獲取了包含 firstname、lastname 和 address 的表單資料。required 規則應用於所有三個輸入欄位。如果任何一個欄位未提供,則驗證將失敗。同樣,您還可以設定所需的最小字元數。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; use Illuminate\Routing\Router; use Illuminate\Validation\Rule; class testuserip extends Controller { public function index() { $formData = array( 'firstname' => 'Siya', 'lastname' => 'Nadkarni', 'address' => 'xyz' ); $rules['firstname'] = 'required|string'; $rules['lastname'] = 'required|string'; $rules['address'] = 'required|string'; // validate $validator = Validator::make($formData, $rules); if ($validator->fails()) { echo "Validation Failed"; } else { echo "Validation Successful"; } } }

輸出

以上內容的輸出為:

Validation Successful

示例 3

在下面的示例中,我在輸入欄位上定義了一個 required 規則,並且未傳遞該欄位。將看到輸出中顯示的驗證失敗訊息。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; use Illuminate\Routing\Router; use Illuminate\Validation\Rule; class testuserip extends Controller { public function index() { $formData = array( 'lastname' => 'Nadkarni', 'address' => 'xyz' ); $rules['firstname'] = 'required|string'; $rules['lastname'] = 'required|string'; $rules['address'] = 'required|string'; // validate $validator = Validator::make($formData, $rules); if ($validator->fails()) { echo "Validation Failed"; } else { echo "Validation Successful"; } } }

輸出

以上程式碼的輸出為:

Validation Failed

示例 4

在以下示例中,將向輸入欄位傳遞一個 null 值,並檢視驗證狀態:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; use Illuminate\Routing\Router; use Illuminate\Validation\Rule; class testuserip extends Controller { public function index() { $formData = array( 'firstname' =>null, 'lastname' => 'Nadkarni', 'address' => 'xyz' ); $rules['firstname'] = 'required|string'; $rules['lastname'] = 'required|string'; $rules['address'] = 'required|string'; // validate $validator = Validator::make($formData, $rules); if ($validator->fails()) { echo "Validation Failed"; } else { echo "Validation Successful"; } } }

輸出

以上程式碼的輸出為:

Validation Failed

它給出驗證失敗訊息,因為 firstname 是必填欄位,不能具有 null 值。

更新於: 2022-09-01

3K+ 閱讀量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.