簡體   English   中英

Laravel 5.6驗證正則表達式為空字符串

[英]Laravel 5.6 Validation Regex for empty string

我想用驗證器檢查電話字符串。 上面的代碼。

$rules = [
    'phone' => 'regex:/^09\d{8}$/'
];
$messages = [
    'phone.regex' => 'INVALID_PHONE',
];

測試1:

$data = [
    'phone' => 'test'
];
$vali = Validator::make($data, $rules, $messages);

dd($vali->errors()->first()); // I got "INVALID_PHONE". That's I exactly expected.

測試2:

$data = [
    'phone' => ''
];
$vali = Validator::make($data, $rules, $messages);

dd($vali->errors()->first()); // I got "". I expected it is "INVALID_PHONE"

我想念什么?

我只想使用正則表達式。

這是因為也需要它。

$rules = [
    'phone' => 'required|regex:/^09\d{8}$/'
];

當您傳遞一個空字符串時,驗證會通過,因為電話字段不是必需的,因此因為它為空,所以它不會檢查正則表達式。 一旦它不是一個空字段,它將檢查正則表達式模式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM