根据http://php.net/manual/en/class.datetime.php
PHP跟随" ATOM"日期格式。制作像" 2017-11-14"我们需要日期格式字符串" Y-m-d"。我能够使用php日期函数和类生成它。它按预期工作。
['amazed', 10]
现在我想在Symfony3应用程序中动态使用这些日期格式。根据文档,dateType字段的格式必须符合" RFC3339"因为它使用IntlDateFormatter类进行格式化。 https://symfony.com/doc/current/reference/forms/types/date.html#format
因此要生成与前一个相同的日期,我们需要不同的格式字符串
/////Using date function////
echo date("Y-m-d");
/////Using DateTime class////
$date = new DateTime();
echo $date->format('Y-m-d');
要在我的表单上呈现datepicker字段,我使用的是bootstrap datepicker(https://bootstrap-datepicker.readthedocs.io/en/stable/options.html#format)。格式要求在此处生成相同的上一个日期有点不同" yyyy-mm-dd"。
虽然我可以理解datepicker格式可以与PHP不同。但我无法理解为什么PHP和symfony日期格式要求之间存在差异。
我不知道如何让它工作,因为可以有很多格式,用户可以选择。因此,用户选择他的日期格式首选项,我需要在任何地方生成相同的日期字符串。
我正在考虑一些可以将PHP日期字符串转换为symfony和javascript格式的转换器,或者如果我可以设法更改symfony的dateformatter,它在我看来也有帮助。
答案 0 :(得分:0)
你混淆了symfony格式和html5格式。没有symfony格式,rfc指的是html规范。
你应该为你的前端:
YYYY-mm-dd
总而言之,您的控制器和模型应该只处理Datetimes对象