我使用CakePHP 1.3编写应用程序,并在数据库中创建datetime
字段。
我称之为echo $post['Post']['created'];
,我得到类似2011-07-03 00:00:00
的内容。
我希望它看起来更像Jan 1st 2008, 19:25
。
我在 7.12.1 Formatting (CakePHP手册)中看到了一些文档,但是如何实现呢?
答案 0 :(得分:4)
要使用内置的蛋糕Time
帮助器执行此操作,请使用此:
// controller:
$helpers = array('Time');
然后在你看来:
echo $this->Time->nice($post['Post']['created']);
// outputs Tue, Jan 1st 2008, 19:25".
如果您正在寻找性能(虽然可以忽略不计),最好直接使用date
,而不会像其他海报所说的那样,而无需加载Time
帮助程序的开销。
但是帮助程序实现起来更容易,更快,更不用说打开其他辅助函数了,所以它显然取决于你的需求。
答案 1 :(得分:3)
您需要使用date()
格式化日期。请参阅http://php.net/manual/en/function.date.php和http://php.net/manual/en/function.strtotime.php
echo date('M j Y, h:i', strtotime($post['Post']['created']));
更好的解决方案是创建帮助程序。了解这些内容的最佳位置是CakePHP manual。
答案 2 :(得分:0)
在Cake中执行此操作的最简单方法是使用时间帮助程序。上一篇文章给出了CakePHP 2.x的正确答案,但是你要求1.3的解决方案。 在您的控制器中写:
var $helpers = array('Time');
在你的视图中写道:
echo $time->niceShort($post['Post']['created']);
过去3年,这对我有用。