如何在Laravel中驗證精確的單詞?


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

要獲得要驗證的精確單詞,您可以使用Laravel提供的Rule::in方法。

使用Rule::in方法,此規則提供的任何值都必須匹配,否則將失敗。

示例1

使用Rule::in方法

要使用Rule::in方法,您需要包含類:use Illuminate\Validation\Rule; 或 use Rule;

$input = [ 'category' => ['ABC', 'XYZ'], ]; Validator::make($input, [ 'category' => [ 'required', 'array', Rule::in(['ABC', 'TIK']), ], ]);

這裡$input陣列包含一個類別,其值為ABC和XYZ。Rule::in包含兩個值ABC和TIK的陣列。Rule::in期望陣列與輸入資料中給出的陣列完全匹配,否則將失敗。

由於Rule::in規定是ABC和TIK,與ABC和XYZ不匹配。因此,上述對$input的驗證將失敗。

示例2

在這個例子中,我們將測試使用Rule::in匹配的精確單詞。

<?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() { $input = array("name" => "Riyan"); $rules = [ 'name' => [ Rule::in('Riyan')] ]; // validate $validator = Validator::make($input, $rules); if ($validator->fails()) { echo "Word does not match"; } else { echo "Word matches"; } } }

輸出

以上程式碼的輸出為:

Word matches

示例3

在這個例子中,我們將使用in:表示式來測試精確的單詞。

<?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() { $input = array("name" => "Disha"); $rules = [ 'name' => 'in:Disha', ]; // validate $validator = Validator::make($input, $rules); if ($validator->fails()) { echo "Word does not match"; } else { echo "Word matches"; } } }

輸出

以上程式碼的輸出為:

Word matches

示例4

您可以像下面示例中所示那樣在規則內使用正則表示式。

<?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() { $input = array("name" => "Disha"); $rules = [ 'name' => 'regex:/^Disha$/', ]; // validate $validator = Validator::make($input, $rules); if ($validator->fails()) { echo "Word does not match"; } else { echo "Word matches"; } } }

輸出

以上程式碼的輸出為:

Word matches

更新於:2022年9月1日

3K+瀏覽量

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.