我如何去验证日期是ISO8601,特别是RFC3339?我是否需要编写一些自定义正则表达式来执行此操作?有没有办法在Symfony中验证ISO8601的日期?
1
A
回答
4
2
由于事实上,我知道的唯一途径,但所提出的正则表达式,为增加其自身的回调验证:
->add('occured_at', 'text', [
'constraints' => [
new Assert\NotBlank,
new ASsert\Callback(function($date, $context) {
if (false === \DateTime::createFromFormat(\DateTime::ISO8601, $date)) {
$context->addViolation("$date is not at ISO8601 format.");
}
})
],
])
+0
'\ DateTime :: createFromFormat(\ DateTime :: ISO8601,$ date)'并不总是正确的。 http://stackoverflow.com/a/21260686/377645 –
1
只用symfony 3.1
你可以使用
@Assert\DateTime(format="Y-m-d\TH:i:sO")
参见:http://symfony.com/doc/current/reference/constraints/DateTime.html
ISO8601“Y-m-d \ TH:i:sO”的格式;
http://php.net/manual/en/class.datetime.php
EDIT 1:
可以使用直接的格式 “C”,快捷方式ISO 8601格式
(ISO 8601的日期(在PHP 5中添加):http://php.net/manual/en/function.date.php)
相关问题
- 1. 有没有办法关闭提升日期和时间验证
- 2. ISDATE没有验证正确的日期
- 3. 有没有办法写没有日期的Jekyll帖子?
- 4. 有没有办法在Postgres中验证签名摘要?
- 5. 有没有办法在Hapi验证中使用命名函数?
- 6. 有没有办法在rails中保持验证字段可选?
- 7. 有没有办法在Eclipse中保存时自动验证JSP?
- 8. 有没有办法在PHP中对XML流进行XSD验证
- 9. 有没有办法验证没有线程阻塞?
- 10. 有没有办法在eloqua中动态检查日期?
- 11. 有没有办法在Pikaday中取消选择日期?
- 12. 有没有办法在JSON中更改日期时间格式?
- 13. 有没有办法从SQL中的日期中减去天数?
- 14. 有没有办法验证MVC 2中传入的HttpPostedFilebase文件?
- 15. 有没有办法加快django中的身份验证功能?
- 16. 日期验证,以便没有选择以前的日期
- 17. 有没有办法让c#中的日期更改通知?
- 18. 有没有办法让天数之间的日期和日期存储在NSDate
- 19. 有没有办法在django-celery中验证经纪人的SSL证书?
- 20. 在日期栏中验证没有价值的人
- 21. 有没有办法在初始化时验证backbone.js模型?
- 22. 有没有办法在iPhone上进行RTMPE和SWF验证?
- 23. 断言日期验证误差的symfony]
- 24. Xpage:日期验证没有给出任何验证消息
- 25. JavaScript的日期ISO8601
- 26. Java的日期ISO8601
- 27. 有没有办法判断所有验证器是否满足?
- 28. 有没有办法让TI日期\时间值在线?
- 29. 有没有办法在猪身上添加日期时间?
- 30. 有没有办法本地化输入类型=“日期”,在HTML5
http://symfony.com/doc/current/reference/constraints/DateTime.html – felipsmartins