【发布时间】:2014-10-25 22:19:52
【问题描述】:
我对 Laravel 日期验证获得的结果感到有些困惑。有问题的规则是:
'date_of_birth'=>array('required', 'date_format:n/j/Y')
我发现如果有人输入 10/12/13,它会通过验证,并存储为 10/12/0013。显然,这并不好。有什么方法可以验证要求四位数的年份吗?我认为这就是格式中的 Y 会做的事情。
【问题讨论】:
-
我可以重现这个(Laravel 4.2.11,PHP 5.5)。正如this question 中所讨论的,这似乎是一个 PHP(不是 Laravel)特定的错误。但你可以解决它:
array('required', 'date_format:n/j/Y', 'regex:/[0-9]{2}\/[0-9]{2}\/[0-9]{4}/') -
该死,我尝试搜索有关该主题的其他问题,但没有出现。我不知道正则表达式,所以作为部分修复,我添加了 `after:01-01-1900',它会捕获这个错误和各种胖手指。不过,您的答案是正确的。如果您想将其添加为单独的回复,我很乐意将您标记为正确。
标签: validation date laravel-4