6

我想更改 Symfony 1.4 中日期的格式

默认值为:

<?php echo $question->getUpdatedAt(); 
// Returns 2010-01-26 16:23:53
?>

我希望我的日期格式如下:26/01/2010 - 16h23

我尝试使用format_date助手DateHelper类。

不幸的是,API是相当空的(确实需要做一些事情。)

浏览 helper 的源代码,我发现可以传递第二个参数 format。

我假设它使用与PHP 的 date function相同的语法。但这是它输出的内容(与上面相同的示例):

<?php sfContext::getInstance()->getConfiguration()->loadHelpers('Date');
// [...]
 echo format_date($question->getUpdatedAt(),'d/m/y - H\hi')
// Returns 26/23/2010 - 16\4i

我确定我不是第一个遇到麻烦的人,但我一直在谷歌搜索,但没有出现任何准确的结果。

你们知道如何在 Symfony 1.4 中格式化日期吗?

4

4 回答 4

14

看看1.4 中的新功能

你可以做:

$question->getDateTimeObject('updated_at')->format('d.m.Y');
// I assume the field's name is 'updated_at'

从文档:

日期设置器和获取器

我们添加了两种新方法来检索Doctrine日期或时间戳值作为 PHP DateTime 对象实例。

echo $article->getDateTimeObject('created_at')->format('m/d/Y');

您还可以通过简单地调用 setDateTimeObject 方法并传递一个有效的 DateTime 实例来设置日期值。

$article->setDateTimeObject('created_at', new DateTime('09/01/1985'));

但它似乎只适用于 Doctrine。

于 2010-01-26T17:42:42.473 回答
1

使用默认的 PHP 日期函数怎么样?date('d/m/Y', strtotime($question->getUpdatedAt())

于 2010-01-26T17:37:41.907 回答
0

您还可以使用 sfDateFormat 类来处理日期。 链接文本

于 2010-01-27T21:42:52.587 回答
-4

你试试:

echo $question->getUpdatedAt('d/m/y - H\hi')

我认为这是最简单的方法

于 2010-06-15T08:38:54.450 回答