我在哪里可以findphp.ini的php.ini

看来,PHP的命令行是从主要的PHP解释器使用不同的php.ini。 我正在使用Ubuntu 10.4。 我的问题是,在主php.ini我已经包括一个额外的path为外部库,但在cli版本,这是不存在的,所以我有一个path包含错误。

谢谢

只要问PHP:

$ php -i |grep php\.ini

更好的是: $ php --ini

这也将显示所有额外的* .ini文件加载(通常挂在Debian的一些conf.d目录中):

configuration文件(php.ini)path:/ etc / php5 / cli
加载的configuration文件:/etc/php5/cli/php.ini
在/etc/php5/cli/conf.d中扫描其他.ini文件
附加的.ini文件parsing:/etc/php5/cli/conf.d/apc.ini,
/etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/gd.ini,
/etc/php5/cli/conf.d/geoip.ini,
/etc/php5/cli/conf.d/imagick.ini,
/etc/php5/cli/conf.d/imap.ini,
/etc/php5/cli/conf.d/ldap.ini,
/etc/php5/cli/conf.d/memcache.ini,
/etc/php5/cli/conf.d/memcached.ini,
/etc/php5/cli/conf.d/ming.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/mysqli.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini,
/etc/php5/cli/conf.d/pdo_sqlite.ini,
/etc/php5/cli/conf.d/snmp.ini,
/etc/php5/cli/conf.d/sqlite.ini,
/etc/php5/cli/conf.d/sqlite3.ini,
/etc/php5/cli/conf.d/suhosin.ini,
/etc/php5/cli/conf.d/tidy.ini,
/etc/php5/cli/conf.d/xdebug.ini,
/etc/php5/cli/conf.d/xsl.ini

请注意,这是关于php-cli,php-cgi没有这个afaik。

在我上一份工作中,我习惯于在每次执行时指定我的ini文件。

 C:\php\cli\php.exe -c C:\php\php.ini myscript.php 

你可以使用下面的命令findphp.ini。 在LINUX中

 find / -name php.ini 

要么

 locate php.ini 

/etc/php5/cli/php.ini

有趣的是,在两个testing中(在phpinfo()上的apache和在php –ini中的cli中),configuration文件的path是c:\ windows。 更多信息在这里

我有同样的问题。 只需检查/etc/php5/conf.d/中每个文件的所有者和权限即可。 它必须由root拥有,并可以通过anymone来收购。