在 laravel 5 中验证数字输入的长度

validating a numeric input's length in laravel 5

foo.blade.php

<input type="text" name="national-id" />

FooController.php

$rules = [
    'national-id' => 'required|size:10|numeric'
];

national-id 字段应包含 10 digits 我实际上希望上面的代码能够验证这一点,但它会检查 national-id 是否完全等于10与否...

如何验证数字字段的 length

在 laravel 中,数字字段的大小验证将指示它不能大于的最大整数。

使用digits_between:

   'national-id' => 'required|digits_between:10,10|numeric' 

在数字上使用大小时,它会检查数字是否等于大小,在字符串上,它会检查字符数,对于数字你应该使用:

'number' => 'required|numeric|digits_between:1,10'

事实上你不需要使用digits_between规则。您可以使用 digits rule 因此根据文档使用它就足够了:

$rules = [
    'national-id' => 'required|digits:10'
];

没有 numeric 规则,因为 digits 规则也会验证给定值是否为数字。