如何在 laravel 中的一条规则中验证整数和最大浮点数
How to validate integers and max float digits in one rule in laravel
大家好,我需要验证我的 laravel 应用程序中的某些内容,但我不知道如何验证。
所以如果用户引入1234.55应该允许,因为它只有5个号码,但是如果用户引入12345678.55必须拒绝!
我现在所拥有的。
return [
'max_debit' => 'required|numeric|min:0'
];
我尝试使用 digits_between
,但是当我使用它时,验证不允许浮点数。
所以规则应该匹配:
- 整数
- 浮点数 -> 全部大于或等于 0
- 最大位数:
9
- 接受:
1234.55
- 拒绝:
12345678.55
您可以使用正则表达式规则:https://laravel.com/docs/master/validation#rule-regex
'max_debit' => [
'required',
'max:9',
'regex:/^(([0-9]*)(\.([0-9]+))?)$/',
],
使用 max
您最多可以定义 9 个字符。
如果要限制句点后的数字,可以添加 {0,2}
组,其中 0
代表零位数字,2
代表句点后最多 2 位数字:
/^(([0-9]*)(\.([0-9]{0,2}+))?)$/
基于此回答的回答:
这是您要找的吗?
您可以使用 max:9(最大数值)或在 laravel
中也使用自定义角色
大家好,我需要验证我的 laravel 应用程序中的某些内容,但我不知道如何验证。
所以如果用户引入1234.55应该允许,因为它只有5个号码,但是如果用户引入12345678.55必须拒绝!
我现在所拥有的。
return [
'max_debit' => 'required|numeric|min:0'
];
我尝试使用 digits_between
,但是当我使用它时,验证不允许浮点数。
所以规则应该匹配:
- 整数
- 浮点数 -> 全部大于或等于 0
- 最大位数:
9
- 接受:
1234.55
- 拒绝:
12345678.55
您可以使用正则表达式规则:https://laravel.com/docs/master/validation#rule-regex
'max_debit' => [
'required',
'max:9',
'regex:/^(([0-9]*)(\.([0-9]+))?)$/',
],
使用 max
您最多可以定义 9 个字符。
如果要限制句点后的数字,可以添加 {0,2}
组,其中 0
代表零位数字,2
代表句点后最多 2 位数字:
/^(([0-9]*)(\.([0-9]{0,2}+))?)$/
基于此回答的回答:
这是您要找的吗?
您可以使用 max:9(最大数值)或在 laravel
中也使用自定义角色