带德语日期的 Strftime 未正确翻译 "March"
Strftime with German Date not translating "March" properly
我正在使用带有 Zend 的 SocialEngine4。此应用程序的翻译工作正常。但是我们想要一些不同的德语日期格式,所以我们实现了新代码。但它没有正确翻译 "March" 。它显示的是“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
。
您可以通过将以下行添加到 header。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
通过这样做,应该不需要将德语 Umlaute 转换为实体名称。
然而,如果出于某种奇怪的原因它仍然无法正常工作,您也可以简单地将所有特殊字符转换为其等效的实体名称:
echo htmlentities($date);
像这样肯定能用。
我正在使用带有 Zend 的 SocialEngine4。此应用程序的翻译工作正常。但是我们想要一些不同的德语日期格式,所以我们实现了新代码。但它没有正确翻译 "March" 。它显示的是“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
。
您可以通过将以下行添加到 header。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
通过这样做,应该不需要将德语 Umlaute 转换为实体名称。
然而,如果出于某种奇怪的原因它仍然无法正常工作,您也可以简单地将所有特殊字符转换为其等效的实体名称:
echo htmlentities($date);
像这样肯定能用。