setlocale(LC_CTYPE,"de_DE.UTF8")或setlocale(LC_CTYPE,"de_DE.UTF-8")?

6 php locale utf-8

setlocale(LC_CTYPE, "de_DE.UTF8")
Run Code Online (Sandbox Code Playgroud)

要么

setlocale(LC_CTYPE, "de_DE.UTF-8")
Run Code Online (Sandbox Code Playgroud)

有没有破折号?我在答案中都看到过.

nwe*_*hof 3

我将运行locale -a并使用它输出的字符串。在 OS X 10.9 上,我得到de_DE.UTF-8. 在 Debian 6 上,我得到de_DE.utf8. 另一方面dpkg-reconfigure locales使用。de_DE.UTF-8最安全的方法可能是检查返回值setlocale并在失败时尝试不同的变体。

也就是说,所有版本通常都应该可以工作:带或不带破折号、大写或小写。