Symfony日期时间字段格式

问题描述 投票:6回答:7

我有一个表单中的datetime字段,我想给格式掩码yyyy-mm-dd hh:mi,我使用以下代码:

$builder->add('beginDate', 'datetime', array('widget' => 'single_text',
                                               'date_format' => 'yyyy-MM-dd  HH:i'))

但是我在表单领域得到的是这样的:

对不起

我想要像:

2014-08-25 22:37

我能得到这个吗?

我见过thisthis,但没有找到一个真实的例子几小时(24小时格式)和分钟

谢谢

symfony datetime
7个回答
11
投票

您是否在日期时间定义中尝试了以下date_format

'yyyy-MM-dd HH:mm'

而不是你现在拥有的:

'yyyy-MM-dd HH:i'

根据文档,我认为你将PHP日期格式选项与symfony表单构建器期望的RFC格式选项混合在一起。仔细阅读接受的RFC datetime formats,了解如何调整它。


8
投票

你应该使用接受format optionHTML5 DateTime format

$builder->add(
    'beginDate',
    'datetime',
    array(
        'widget' => 'single_text',
        'format' => 'yyyy-MM-dd  HH:mm'
    )
)

使用format时,应使用date_format选项代替widget = single_text


4
投票

你为什么不尝试这个?

    $builder
        ->add('beginDate', 'date', array(
            'widget' => 'single_text',
            'format' => 'yyyy-MM-dd H:mm',
        ));

1
投票

你是如何使用Twig或Php为这个结果形成显示的?也许这可能与你在parameters.yml et config.yml的当地人有关,否则就是枝条展示。

http://twig.sensiolabs.org/doc/filters/date.html#timezone


0
投票

你试过这样的事情:

$builder->add('beginDate', 'datetime', array(
            'widget' => 'single_text',
            // input format for single_text
            'format' => 'dd/MM/yyyy kk:mm',
        ));

参考这个:http://symfony.com/doc/current/reference/forms/types/datetime.html和这个:http://userguide.icu-project.org/formatparse/datetime#TOC-Date-Time-Format-Syntax


0
投票

我有同样的问题,这对我有用

        ->add('closingDate', DateTimeType::class, [
            'date_widget' => 'single_text',
            'date_format' => 'dd.MM.yyyyTH:i',
            'html5' => false,
        ]);

0
投票

这种方式对我很有用

使用Symfony \ Component \ Form \ Extension \ Core \ Type \ DateType;

->add('beginDate', DateType::class, array(
                "widget" => 'single_text',
                "format" => 'yyyy-MM-dd',
                "data" => new \DateTime()
            ))
© www.soinside.com 2019 - 2024. All rights reserved.