Error with PECL command in PHP7

I've upgraded php to version 7 and now I have problems with pecl command. When I run sudo pecl install mongo I get long list of errors:

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

I've tried solutions from this question: PECL command produces long list of errors but it's not working. I'm using Ubuntu 14.04 with PHP7, I installed php-dev package


Solution 1:

Your need to install this extensions

sudo apt-get install php-pear
sudo apt-get install php-xml php7.0-xml
sudo pecl install mongodb

Solution 2:

In my case on Ubuntu there was php7.1 (fpm) AND php7.2 (cli) installed.

Switching the cli explicitly to php7.1 using

sudo update-alternatives --set php /usr/bin/php7.1
sudo update-alternatives --set phpize /usr/bin/phpize7.1
sudo update-alternatives --set php-config /usr/bin/php-config7.1

fixes the problem for me.