我需要在我的EasyPHP环境中启用pdo_mysql,所以我去了php.ini文件并取消注释以下行:

extension=php_pdo_mysql.dll

不幸的是,我仍然有同样的问题。 我正在使用CLI,所以我想我需要找到CLI使用的php.ini文件。我怎么才能找到它?


当前回答

在OS X v10.9 (Mavericks)上,运行:

$ php -i | grep 'Configuration File'

返回:

Configuration File (php.ini) Path => /etc
Loaded Configuration File:         (none)

在/etc/目录中是:

php.ini.default

(以及php-fpm.conf.default)

我可以复制php.ini.default到php.ini,添加日期。timezone = "US/Central"移到最上面(在[php]的正下方),问题就解决了。

(至少错误消息消失了。)

其他回答

保存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模式加载另一个。

命令行没有使用php.ini。你必须将文件从…EasyPHP-<<version>>\apache\php.ini复制到…EasyPHP-<<version>>\php\php.ini,然后编辑php目录中的文件。

参考:

为什么CakePHP不能烘焙连接到在Windows Vista终极版的EasyPHP下运行的MySQL ?

如果你需要将它传递给另一个应用程序,你可以这样做:

php --ini | grep Loaded | cut -d" " -f12

只返回路径。php -c $(php——ini | grep Loaded | cut -d" " -f12)将在配置文件中传递(对fpm有用)

我记得当我使用EasyPHP时,php.ini文件在C:\Windows\或C:\Windows\ system32中

在Docker容器中,"phpmyadmin/phpmyadmin"。没有任何php.ini文件。但是有两个文件:php.ini-debug和php.ini-production。

要解决这个问题,只需将其中一个文件重命名为php.ini并重新启动Docker容器。