Locale Php.ini中的Php语言环境配置
默认区域设置值可以是php.ini或.htaccess中的places吗 php函数的等价物Locale Php.ini中的Php语言环境配置,locale,php,Locale,Php,默认区域设置值可以是php.ini或.htaccess中的places吗 php函数的等价物 setlocale(LC_MONETARY, 'it_IT'); 例如它可以,看看。php.ini中没有任何东西可以帮助您。但作为替代方案,您可以尝试从.htaccess设置环境变量 SetEnv LC_ALL it_IT.UTF-8 但这些设置最多只能对PHP的CGI和FastCGI版本生效,而不是对通常的mod_PHP安装生效。遗憾的是,目前无法在PHP范围内设置此配置。 我一直在看
setlocale(LC_MONETARY, 'it_IT');
例如它可以,看看。php.ini中没有任何东西可以帮助您。但作为替代方案,您可以尝试从.htaccess设置环境变量
SetEnv LC_ALL it_IT.UTF-8
但这些设置最多只能对PHP的CGI和FastCGI版本生效,而不是对通常的mod_PHP安装生效。遗憾的是,目前无法在PHP范围内设置此配置。 我一直在看代码,ENV方法不起作用,因为
LC.*
变量不像其他变量那样处理
您可以修补PHP以使用您的语言环境,而不是默认的'C'
语言环境,或者如果确实需要,可以制作一个模块
但实际的方法是在脚本级别执行
编辑:在php.ini中使用auto_prepend_文件可以让您在执行任何脚本之前运行add一些代码,因此它看起来是使用setlocale的好地方。来自手册:“当未指定任何值时,将在intl函数中使用的区域设置(通过省略相应的参数或传递NULL).这些是ICU区域设置,而不是系统区域设置…“@HalilÖzgür,不管这意味着什么。。。PHP很奇怪。已经有一段时间了,我大体上同意,但我试图给出一个更清晰的解释,但失败了:)你能澄清听起来奇怪的部分吗?你知道如何在使用
nginx
和PHP fpm
时设置语言环境吗?PHP不再继承ENV语言环境: