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

foo.blade.php

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

FooController.php

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

该字段应该包含并且我实际上期望上面的代码来验证这一点,但相反,它将检查是否完全等于10或否...

如何验证数值字段?national-id10digitsnational-idlength


答案 1

事实上,你不需要使用规则。您可以使用数字规则,因此根据文档,使用以下命令就足够了:digits_between

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

没有规则,因为规则还会验证给定的值是否为数字。numericdigits


答案 2

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

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

推荐