我怎么知道使用了哪个“php.ini”文件?
我搜索了php.ini文件在我们的Linux Ubuntu服务器中所在的路径,并且在执行命令时发现了许多php.ini文件。那么我怎么能从PHP脚本网页上确切地知道php.ini的位置呢?find / -name php.ini
我搜索了php.ini文件在我们的Linux Ubuntu服务器中所在的路径,并且在执行命令时发现了许多php.ini文件。那么我怎么能从PHP脚本网页上确切地知道php.ini的位置呢?find / -name php.ini
php --ini
对于 Web 服务器 - SAPI 使用phpinfo()
下面是一些示例输出:
bash-3.2# php --ini
Configuration File (php.ini) Path: /usr/local/php5/lib
Loaded Configuration File: /usr/local/php5/lib/php.ini
Scan for additional .ini files in: /usr/local/php5/php.d
Additional .ini files parsed: /usr/local/php5/php.d/10-extension_dir.ini,
/usr/local/php5/php.d/20-extension-opcache.ini,
/usr/local/php5/php.d/40-openssl.ini,
/usr/local/php5/php.d/50-extension-apcu.ini,
/usr/local/php5/php.d/50-extension-curl.ini,
/usr/local/php5/php.d/50-extension-gmp.ini,
/usr/local/php5/php.d/50-extension-imap.ini,
/usr/local/php5/php.d/50-extension-intl.ini,
/usr/local/php5/php.d/50-extension-mcrypt.ini,
/usr/local/php5/php.d/50-extension-mssql.ini,
/usr/local/php5/php.d/50-extension-pdo_pgsql.ini,
/usr/local/php5/php.d/50-extension-pgsql.ini,
/usr/local/php5/php.d/50-extension-propro.ini,
/usr/local/php5/php.d/50-extension-raphf.ini,
/usr/local/php5/php.d/50-extension-readline.ini,
/usr/local/php5/php.d/50-extension-xdebug.ini,
/usr/local/php5/php.d/50-extension-xsl.ini,
/usr/local/php5/php.d/60-extension-pecl_http.ini,
/usr/local/php5/php.d/99-liip-developer.ini
您可以使用 php_ini_loaded_file() 。
摘自 php.net:
$inipath = php_ini_loaded_file();
if ($inipath) {
echo 'Loaded php.ini: ' . $inipath;
} else {
echo 'A php.ini file is not loaded';
}
您可能还需要检查php_ini_scanned_files()。。
另外,您应该注意,如果您从CLI运行PHP脚本,则可能会使用与服务器(例如nginx或Apache)运行它时不同的文件。php.ini
其他选项:
php -i|grep 'php.ini'
info.php
<?php phpinfo();