我正在使用这个简单的脚本在我的主机上测试,该主机在php 5.6上运行。 脚本输出“星期三”而不是“Woensdag”(荷兰语) 为什么星期几仍然是英文而不是荷兰语? 这是因为服务器配置不正确吗?
<?php
/* Set locale to Dutch */
date_default_timezone_set("Europe/Amsterdam");
setlocale(LC_ALL, 'nl_NL');
echo date("l"); // output: Wednesday instead off "Woensdag" (dutch)
?>
答案 0 :(得分:2)
不幸的是,约会不是多语言的。如果要使用其他语言格式化语言,则需要设置区域设置(如在示例中所做的那样)并使用strftime
strftime的格式化选项会导致“Woensdag”(或“德语中的mittwoch等):
setlocale(LC_TIME, 'en_EN');
echo strftime('%A', time()); // for a Wednesday will output: Wednesday
setlocale(LC_TIME, 'nl_NL');
echo strftime('%A', time()); // for a Wednesday will output: woensdag
除非您希望setlocale
影响很多事情,否则您可能希望指定您仅在时间内执行此操作(如上例所示)。请继续阅读setlocale
了解详情:http://php.net/manual/en/function.setlocale.php
请注意,您需要在计算机上使用区域设置才能使用此功能。在linux上查看locale -a
。 setlocale
具有返回值。如果它是假的,那么出错了,你很可能错过了指定的语言环境。