2

如何在 Joomla 中以区域设置日期/时间格式输出日期?

我正在创建一个应该打印日期的模块。我知道我可以像这样对它进行肮脏的破解:

    strftime(format_string, strotime($date));

...但我想要一个更流畅的解决方案,它会使用 Joomla 的内置语言环境处理功能。

4

2 回答 2

3

在 Joomla!1.5有JDate类:

function getLocalizedDate($date = 'now', $format_string = '%Y-%M-%D')
{
    jimport('joomla.utilities.date');
    $jdate = new JDate($date);
    return $jdate->toFormat(JText::_($format_string));
}

工作日和月份名称由 JDate 类本地化,此外,如果格式字符串已知(如 '%Y-%M-%D'),它也会被国际化 - 参见文件开头 /language/xx_XX /xx_XX.ini(其中 xx 是使用的语言。)

注意:JDate 还应用在 configuration.php 中设置或被 Joomla! 覆盖的时区!用户。时间字段应始终存储为 +0000 GMT。

于 2009-07-08T17:31:22.067 回答
0

以下是一些可能有用的代码行(摘自 tmpl/default.php 模块文件):

    <?php
    defined ( '_JEXEC' ) or die ( 'Restricted access' );

    jimport('joomla.html.html');

    if ($params->get ( "display_date", 1 )) {
        echo JHTML::_('date',$myClass->get_YYYYMMDD_Date(),JText::_('DATE_FORMAT_LC3'));
    }

对于 DATE_FORMAT_LC3=%d %B %Y 和日期 19991101,输出 1999 年 11 月 1 日。DATE_FORMAT_LC3 是在 ...\joomla15\language\fr-FR\fr-FR.ini 中定义的常量,用于法语翻译。

在这里,一篇优秀的文章:在 Joomla 中处理日期!

于 2011-03-16T16:47:55.583 回答