1

我正在尝试使用 Zend Framework 2 显示当前年份,我发现的文档并未涵盖如何输出自定义日期格式。

文档可以在这里找到:https ://packages.zendframework.com/docs/latest/manual/en/modules/zend.i18n.view.helper.date.format.html?highlight=dateformat

如果有人可以为我提供 Zend Framework 2 语法来输出自定义日期/时间格式,我们将不胜感激。谢谢!

4

2 回答 2

3

看看这个问题

在此处复制粘贴答案: Zend_Date 已被删除以支持 PHP 5.3 DateTime API http://es.php.net/manual/en/book.datetime.php

在 ZF2 中查看 DateFormat Helper的源代码似乎是不可能的。基本上只需使用 php 类就足够了。

Zend Framework 1 或 2 并没有封装所有内容。当 php 的某些部分按原样完美时,它不会被替换。

编辑:这对提问者有用:

$datetime = new DateTime(null, new DateTimeZone('America/Chicago')); 
echo $datetime->format('Y');
于 2013-01-11T03:02:25.773 回答
2

Zend Framework 2 不再提供任何特定的日期对象。相反,它适用于原生 php DateTime。您使用DateTime对象,它们可以在帮助程序中使用以转换输出。

您提到的视图助手也是专门针对 i18n 的。每个国家/地区的时间戳格式都不同,所以这就是助手的用途。然而,在美国、英国和中国,2013 年是 2013 年。没有必要为此使用 i18n。

因此,当前年份可以直接使用 withDateTime并使用date() 格式参数格式化:

$date = new DateTime;

$date->format('o'); // ISO-8601 year, four digits
$date->format('Y'); // Four digits
$date->format('y'); // Two digits

您可能想要使用Yy

于 2013-01-11T09:46:08.927 回答