Strftime with German Date not translation“;三月”;正确地


Strftime with German Date not translating "March" properly

我正在使用带有Zend的SocialEngine4。此应用程序的翻译器工作正常。但我们想要一些不同的德语日期格式,所以我们实现了新的代码。但它没有正确翻译"三月"。它显示"21。M�rz 2015"日期"而不是"21"。März 2015"。

我使用以下代码进行此更改

setlocale(LC_TIME, 'de_DE', 'deu_deu');
$date = strftime ("%d. %B %Y",strtotime($date));
setlocale(LC_ALL,NULL);
echo $date;

请告诉我这里出了什么问题。

在显示输出的页面中,确保字符集设置为utf-8

您可以通过在标题中添加以下行来完成此操作。

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

这样就不需要将德语元音变音符转换为实体名称。

然而,如果由于某种奇怪的原因,它仍然不起作用,你也可以简单地将所有特殊字符转换为它们的实体名称等价物:

echo htmlentities($date);

就像那样,它肯定会起作用。