小枝,格式化日期SQL Server


Twig, format date SQL Server

我在PHP应用程序中使用Twig,

我使用的PHP对象有一个名为"date"的属性,从SQL Server获得。

它看起来像:"Mar 2 2014 12:00:00:000AM"

我尝试使用Twig转换它来显示它,我尝试使用| date("Y-m-d")但没有成功:

在呈现模板("DateTime::__construct() [function. DateTime::__construct()])时抛出异常。DateTime——construct]: Failed to parse time string (Jun 20 2013 12:00:00 . 000 am) at position 20 (:): Unexpected character") in "…" in line 96.

有什么想法吗?

谢谢,

祝你今天愉快。

date过滤器可以在'DateTime实例和可以传递给strtotime()的字符串上工作,显然你的不是。

你提到你正在使用一个具有日期属性的对象,我建议给它添加一个新函数:

public function getDateAsObject()
{
    // should be able to parse this format: Mar 2 2014 12:00:00:000AM
    return 'DateTime::createFromFormat("M j Y h:i:s:uA", $this->date);
}

您可能需要根据您的约定调整格式和函数名称。

你可以在你的模板中使用它:

{{ your_object.dateAsObject|date("Y-m-d" }}

您不需要使用date('Y-m-d'),根据错误消息,您的对象的日期属性是DateTime类型,因此使用以下内容:

// I assume 'object' is your object which has 'date' as the attribute
<span>Date: </span>{{ object->date->format('Y-m-d') }}

检查文档中的DateTime::Format