php.ini的读取顺序
来自Blueidea
PHP旧版本将php.ini放在windows目录下,在PHP5中,PHP.ini的查找路径不再限于PHP4时代的%SystemRoot%,PHP5会按以下顺序查找PHP.ini:
WEB服务顺序
- PHPIniDir(Apache 2 module only,这个指令仅仅用于当PHP作为Apache模块时使用,不支持CGI运行的PHP)
- 注册表键值:HKEY_LOCAL_MACHINE/SOFTWARE/PHP/IniFilePath
- 环境变量:%PHPRC%
- PHP5的目录(for CLI),或者web服务器目录(for SAPI modules)
- Windows目录(C:/windows or C:/winnt)
在命令行下的顺序大致
- 注册表键值:HKEY_LOCAL_MACHINE/SOFTWARE/PHP/IniFilePath
- Windows目录(C:/windows or C:/winnt)
- PHP5的目录(for CLI),或者web服务器目录(for SAPI modules)
- 环境变量:%PHPRC%
- php -c "c:/inidir/" test.php
排最后的并且有值的生效
查看php.ini 中所有生效的选项
<?php $ini = file_get_contents('c:/php/cmdini/php.ini'); $ini = explode("\n", $ini); foreach ($ini as $value) { if ($value && $value[0] != ';' && $value[0]!="\r") { echo "$value"."\n"; } } ?>