我如何去驗證日期是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