我需要在我的EasyPHP环境中启用pdo_mysql,所以我去了php.ini文件并取消注释以下行:
extension=php_pdo_mysql.dll
不幸的是,我仍然有同样的问题。 我正在使用CLI,所以我想我需要找到CLI使用的php.ini文件。我怎么才能找到它?
我需要在我的EasyPHP环境中启用pdo_mysql,所以我去了php.ini文件并取消注释以下行:
extension=php_pdo_mysql.dll
不幸的是,我仍然有同样的问题。 我正在使用CLI,所以我想我需要找到CLI使用的php.ini文件。我怎么才能找到它?
当前回答
你可以使用get_cfg_var('cfg_file_path')来实现:
要检查系统是否正在使用配置文件,请尝试检索cfg_file_path配置设置的值。如果可用,则表示正在使用配置文件。
Unlike phpinfo() it will tell if it didn't find/use a php.ini at all.var_dump( get_cfg_var('cfg_file_path') );
你可以简单地设置php.ini的位置。您正在使用命令行版本,因此使用-c参数可以指定此特定运行的位置,例如。
php -c /home/me/php.ini -f /home/me/test.php
其他回答
命令行没有使用php.ini。你必须将文件从…EasyPHP-<<version>>\apache\php.ini复制到…EasyPHP-<<version>>\php\php.ini,然后编辑php目录中的文件。
参考:
为什么CakePHP不能烘焙连接到在Windows Vista终极版的EasyPHP下运行的MySQL ?
在你的终端运行php——ini,你会得到所有关于ini文件的详细信息:
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/apc.ini,
/etc/php.d/bcmath.ini,
/etc/php.d/curl.ini,
/etc/php.d/dba.ini,
/etc/php.d/dom.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/gd.ini,
/etc/php.d/imap.ini,
/etc/php.d/json.ini,
/etc/php.d/mbstring.ini,
/etc/php.d/memcache.ini,
/etc/php.d/mysql.ini,
/etc/php.d/mysqli.ini,
/etc/php.d/pdo.ini,
/etc/php.d/pdo_mysql.ini,
/etc/php.d/pdo_sqlite.ini,
/etc/php.d/phar.ini,
/etc/php.d/posix.ini,
/etc/php.d/sqlite3.ini,
/etc/php.d/ssh2.ini,
/etc/php.d/sysvmsg.ini,
/etc/php.d/sysvsem.ini,
/etc/php.d/sysvshm.ini,
/etc/php.d/wddx.ini,
/etc/php.d/xmlreader.ini,
/etc/php.d/xmlwriter.ini,
/etc/php.d/xsl.ini,
/etc/php.d/zip.ini
更多信息,请使用帮助命令php——help。它会显示所有可能的选项。
保存CLI phpinfo输出到本地文件:
php -i >> phpinfo-cli.txt
然后打开文件,找到“已加载配置文件”行。它将包含实际加载的php.ini文件的路径。
Loaded Configuration File => D:\wamp\bin\php\php7.4.1\php.ini
注意,PHP可能会为CLI模式加载不同的PHP .ini文件,而为HTTP模式加载另一个。
在Docker容器中,"phpmyadmin/phpmyadmin"。没有任何php.ini文件。但是有两个文件:php.ini-debug和php.ini-production。
要解决这个问题,只需将其中一个文件重命名为php.ini并重新启动Docker容器。
你可以使用以下方法获得完整的phpinfo():
php -i
在那里,有使用的php.ini文件:
$ php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
在Windows上,使用find代替:
php -i | find/i"configuration file"