一尘不染

格式化DateTime对象,遵守Locale :: getDefault()

php

我有一个DateTime对象,目前正在通过该对象格式化

$mytime->format("D d.m.Y")

这给了我确切的格式:

星期二5.3.2012

唯一缺少的一点是正确的语言。我需要TueTuesday),即DieDienstag)的德语翻译。

这给了我正确的语言环境设置

Locale::getDefault()

但是我不知道该如何DateTime::format使用它。

没有办法做类似的事情:

$mytime->format("D d.m.Y", \Locale::getDefault());

阅读 251

收藏
2020-05-26

共1个答案

一尘不染

那是因为format不注意语言环境。您应该strftime改用。

例如:

setlocale(LC_TIME, "de_DE"); //only necessary if the locale isn't already set
$formatted_time = strftime("%a %e.%l.%Y", $mytime->getTimestamp())
2020-05-26