流明照明/验证验证器出错整数规则

问题描述:

我最近遇到了流明(5.4.6)(Laravel Components 5.4。*)下验证器(照明/验证)的问题。看起来整数规则不起作用。流明照明/验证验证器出错整数规则

我用爪子(或邮递员)发送companyName与字符串类型,它可以通过验证和'我在这里'可以打印出来。即使是布尔类型,比方说(布尔)companyName = TRUE也可以通过验证。你遇到过同样的问题吗?这个bug非常明显,但我没有在google上找到类似的讨论。

我还测试了字符串规则'required | string | min:1'并且它相应地工作,整数或布尔参数都不能通过验证。

code screen-shot

Laravel /流明使得对于integer规则验证使用PHP filter_var()功能:

照亮\验证\关注\ ValidatesAttributes

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

如在该文档中提到:

请注意,标量值在被过滤之前会在内部转换为字符串。

因此布尔值true在内部转换为字符串1,因此通过验证。

这不是一个错误,而是一个实现细节。

+0

不错,你说得对,亚历克斯。谢谢 –