如何全局设置Symfony表单的日期格式?

Joh*_*nny 8 php forms date symfony

为Symfony2表单全局设置自定义日期格式的正确方法是什么?

默认格式是Y-m-d,如果我输入日期m/d/Yd/m/Y它被视为无效.

有没有办法以某种方式将格式与选定的区域设置相关联?我正在寻找简单的解决方案,而无需编写自定义表单类型.

Ren*_*hle 2

如果您需要其他格式,可以在 FormType 中设置格式。

$builder->add('date_created', 'date', array(
    'widget' => 'single_text',
    // this is actually the default format for single_text
    'format' => 'yyyy-MM-dd',
));
Run Code Online (Sandbox Code Playgroud)

默认情况下它不是 'Ymd' 它是 的一个实例IntlDateFormatter。因此,如果您不使用单一文本,应该选择正确的区域设置。

类型:整数或字符串默认值:IntlDateFormatter::MEDIUM(如果小部件是 single_text,则为 yyyy-MM-dd)

http://symfony.com/doc/current/reference/forms/types/date.html#format http://php.net/manual/en/class.intldateformatter.php