嘿,我现在正在网站上工作,想要删除这条警告信息。 谷歌不帮助我,所以我开始在这里搜索,但仍未找到可行的解决方案。
错误:setlocale():无效的区域设置类别名称LC_MESSAGES,必须是 LC_ALL,LC_COLLATE,LC_CTYPE,LC_MONETARY,LC_NUMERIC或其中之一 LC_TIME
我的代码:
$locale = 'de_DE';
setlocale("LC_MESSAGES",$locale );
如果我将LC_Messages替换为LC_All或上层解决方案中的某些内容,我的网站就不再工作了。
有什么想法吗?
答案 0 :(得分:0)
删除LC_MESSAGES周围的引号。
$locale = 'de_DE';
setlocale(LC_MESSAGES,$locale );
有关如何使用此功能的更多信息,请参阅文档 setlocale
显然不支持LC_MESSAGES。
你可以运行
locale
如果您使用Linux发行版查找支持的常量列表,请在您的终端上。
答案 1 :(得分:0)
LC_MESSAGES是一个环境变量,不应该用字符串括起来。
改为使用
$locale = 'de_DE';
setlocale(LC_MESSAGES,$locale );
这应该有所帮助。请检查您的设置中是否存在libintl。对于Windows,您可以获得它libintl for windows
答案 2 :(得分:0)
LC_MESSAGES始终不受支持:LC_MESSAGES用于系统响应(如果PHP是使用libintl编译的,则可用)。资料来源:PHP:setlocale