【问题标题】:Translate names of the month翻译月份名称
【发布时间】:2017-12-12 18:42:08
【问题描述】:

我正在使用 OOP PHP DateTime,我想用三个字母发布月份名称,就像这样

$EventDate = new DateTime(DATEDATA);
echo $EventDate -> format('M');

这是我需要的代码,但例如,如果 DATEDATA 将是 12 月,它将回显 DEC,但我希望此 DEC 翻译成我的语言,而不是 DEC 回显 დეკ。 有人能解释一下如何手动翻译这种东西吗?

谢谢。

【问题讨论】:

  • 手动 - $TranslateArray[$EventDate->format('n') - 1]

标签: php datetime datetime-format


【解决方案1】:

IntlDateFormatter 类包含IntlDateFormatter::formatObject() 方法,该方法提供了一种使用指定区域设置格式化DateTime 对象的快速方法。

例如,让我们将 December 12th, 2017DateTime 对象格式化为格鲁吉亚语的缩写月份名称。

$datetime = new DateTime("2017-12-12");
$month = IntlDateFormatter::formatObject($datetime, "MMM", "ka");
echo $month;

如预期的那样,上面的示例输出以下内容:

დეკ

【讨论】:

  • 我正在尝试完全相同的代码,但它没有输出დეკ,它写入以下错误:致命错误:未发现异常:DATETIME::__CONSTRUCT(): FAILED TO PARSE TIME STRING (GET_FIELD('EVENT_DATE' )) 在位置 0 (G):在 /APP/PUBLIC/WP-CONTENT/THEMES/AXALI/FRONT-PAGE.PHP:30 的数据库中找不到时区 堆栈跟踪:#0 /APP/PUBLIC/WP -内容/主题/AXALI/FRONT-PAGE.PHP(30): DATETIME->__CONSTRUCT('GET_FIELD('EVEN...') #1 /APP/PUBLIC/WP-INCLUDES/TEMPLATE-LOADER.PHP(74) : INCLUDE('/APP/PUBLIC/WP-...') #2 /APP/PUBLIC/WP-BLOG-HEADER.PHP(19): REQUIRE_ONCE('/APP/PUBLIC/WP-...')。 ..
  • cmets 系统不是调试代码的好地方,对不起。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-28
  • 2016-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多