首页 > 解决方案 > 正确显示日期变量的值

问题描述

我为用户定义了一些字段来帮助他/她出于特定原因输入日期,

那是实体:

/**
 * @var \DateTime
 *
 * @ORM\Column(name="order_date", type="datetime", length=20,nullable=true)
 * 
 * @NotBlank()
 */
private $orderDate;

那是形式:

->add('orderDate',null, ["label" => "courseorder.orderDate",'widget' => 'single_text', 'format' => 'yyyy-mm-dd'])

这是即将显示整个列表的树枝代码:

<td>{{ courseOrder.orderDate|date('y/m/d') }}</td>

但是 当输入这个日期 ->(2/7/97)
时,它会将这个 ->(11/1/97) 保存到数据库并显示在 index.html.twig

标签: phpsymfonytwigsymfony-formsdatetime-format

解决方案


我建议您twig date format 在此处阅读有关输入链接描述的信息

use Symfony\Component\Form\Extension\Core\Type\DateType;

->add('orderDate', DateType::class, [
        'label_attr' => ['class' => 'your-label-class'],
        'attr' => ['class' => 'form-control'],
        'translation_domain' => false,
        'widget' => 'single_text',
        'format' => 'yyyy-MM-dd'
 ])

在您的视图中显示日期表格时:

<td>{{ courseOrder.orderDate|date('Y/m/d') }}</td>

推荐阅读