我正在尝试用挪威语显示一个带有strftime的日期,如下所示:
echo strftime('%a,%e.%m.', $timestamp);
但是,对于诸如Sunday, February 6
这样的日期,上面的格式应为 Lø,02.6
返回为 L�., 6.02.
当尝试使用 %A
显示一整天时,它会呈现为 L�rdag
。
(我不确定这个角色是否只是在Mac上为我错误地显示,但这里有一个截图以防万一(
在我的HTML的头部,我已经设置了<meta charset="UTF-8">
,并通过PHP设置了setlocale(LC_ALL, 'nb_NO');
编辑甚至直接进入服务器上的 php 控制台并执行php -a
:
setlocale(LC_ALL, 'nb_NO');
echo strftime('%a','20160206');
我得到l�.
经过一些故障排除,尤其是在编辑中的直接控制台测试之后,我运行了一个locale -a
,并注意到 UTF-8 语言环境不是通过我的原始sudo locale-gen nb_NO
安装的,所以我运行了:
sudo locale-gen nb_NO.utf8
,然后还必须相应地设置区域设置setlocale(LC_ALL, 'nb_NO.utf8');
现在一切正常。