Laravel价格验证仅接受正数,而不仅是0

用户名

我想验证Laravel中的“价格”字段。

价格应仅包含不带(。)或(,)的数字,并且也不能以0开头。

例如

2500 //通过

02500 //失败

12.12 //失败

12,12 /失败

我现在的规则如下所示:

'price' => 'required|integer|not_in:0',

它似乎与上面的示例一起工作,但是我不明白。为什么integer不允许像0123这样的内容以零开头。我只想确保自己的规则符合预期,并且我不会错过任何东西

谢谢

凯文尼尔

如果您不确定规则“整数”,则可以使用正则表达式表达式验证,如下所示:

'price' => 'required|regex:^[1-9][0-9]+|not_in:0',

我遇到了与您相同的问题,从那时起,我一直将regex验证用于此类要求。此外,如果您想使用js进行正面验证,它还允许您取回相同的正则表达式。

这是允许验证整数的laravel函数:

public function validateInteger($attribute, $value)
{
    return filter_var($value, FILTER_VALIDATE_INT) !== false;
}

因此,PHP本身与此行为有关。PHP告诉我们有关FILTER_VALIDATE_INT的事情:

将值验证为整数(可以选择从指定范围开始),并在成功时转换为int。

PHP没有设置有关“ 0”值的其他信息,但是众所周知,此函数不考虑以“ 0”开头的数字。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用ls别名仅列出隐藏文件(不仅是点文件)

PHP&Laravel:整个重定向和终止脚本(不仅是一个功能)

Laravel APP_KEY用于长期加密的数据(不仅是密码)

ngModel,设置整个对象,不仅是ngOptios的值

突出显示整个UIButton,不仅是左侧的图像?

Boost系统1.69.0不仅是标题吗?

iPad方向在iOS中不仅是四个

每个月ssh卡住了(不仅是ssh)

不仅是多个集合的交集,而且并集和更新

DirectCast是否有任何窗口,不仅是主窗口?

如何仅使用python请求模块从拨号搜索结果页面中抓取所有结果(不仅是前10个结果)?

如何仅显示其中具有选定的<li>的<ul>,包括该父ul中的所有<li>,而不仅是选定的ul?

在ggplot2中明确设置面板尺寸(不仅是绘图尺寸)

您如何显示每周数据,不仅是本月,而是用户的全部数据

在Javascript中将对象作为参数传递-不仅是参数,还包括根据变量构建的参数

如何在R中一次创建数据帧(不仅是一个)

如何检测用户是否在 PHP 或 Jquery 中使用 Apple 设备 [不仅是 iOS]

质数函数返回所有数字,不仅是质数

如何在Java中测试类是否正确实现了Serializable(不仅是Serializable的实例)

Dafny要求字符串的前提不仅是空格

当城市名称等于某个国家的名称时(不仅是),CLGeocoder返回错误的结果

如何从网络浏览器(不仅是活动)启动应用

Android Studio有时看不到模块更改(可能不仅是模块...)

在所有内容(不仅是有效路径)之前检查Meteor.user()

使用angularjs对所有页面进行排序(不仅是当前页面)

如何获取单词(不仅是单词)的有序自动完成列表?

用于测试任意方法是否存在的 std::is_invocable 语法(不仅是 operator())

为什么Python 3.3+ dict排序不仅是不确定的,而且是变量的?

Gnuplot - Windows 终端并保存为 png/pdf ...(不仅是 .EMF)