我已将 php 升级到版本 7,现在 pecl 命令出现问题。当我运行 sudo pecl install mongo 时,我收到一长串错误:
Warning: Invalid argument supplied for foreach() in Command.php on line 249
Warning: Invalid argument supplied for foreach() in /usr/share/php/PEAR/Command.php on line 249
Warning: Invalid argument supplied for foreach() in Command.php on line 249
Warning: Invalid argument supplied for foreach() in /usr/share/php/PEAR/Command.php on line 249
Warning: Invalid argument supplied for foreach() in Command.php on line 249
Warning: Invalid argument supplied for foreach() in /usr/share/php/PEAR/Command.php on line 249
我已尝试过针对此问题的解决方案:https://serverfault.com/questions/589877/pecl-command-produces-long-list-of-errors但它不起作用。我使用的是 Ubuntu 14.04 和 PHP7,我安装了php-dev
包
答案1
我在使用 7.1 时也遇到了这个问题,升级后也遇到了pecl
这个问题apt-get
。我通过php7.1-xml
使用 安装包解决了这个问题apt-get
。
如果您运行的是 7.0,则需要执行以下操作:
sudo apt-get install php7.0-xml
如果您正在运行 7.1,请运行以下命令:
sudo apt-get install php7.1-xml
这应该可以解决您的问题。似乎 PEAR 在启动时解析帮助文本和配置信息,并且(我假设)它以 XML 形式存储在某个地方