http://lornajane.net/posts/2016/php-7-0-and-5-6-on-ubuntu
但我不知道如何使用pecl
为php5.6或php7.0安装扩展。例如,我已经在php5.6中安装了
libevent
或amqp
版本。现在,当我键入
pecl install libevent
并且我的活动php版本是php7.0(使用update-alternatives --set php /usr/bin/php7.0)
时,pecl
返回消息,指出libevent
已经安装。但它只在php5.6中安装了(当此版本处于活动状态时),现在我想在php7.0中进行安装。
哪些命令可以帮助我?
更新
我已经找到了这些命令,可以将pecl切换到php7.0并将它们打包成可执行的bash脚本:
#!/bin/bash
sudo update-alternatives --set php /usr/bin/php7.0
sudo pecl config-set php_ini /etc/php/7.0/cli/php.ini
sudo pecl config-set ext_dir /usr/lib/php/20151012/
sudo pecl config-set bin_dir /usr/bin/
sudo pecl config-set php_bin /usr/bin/php7.0
sudo pecl config-set php_suffix 7.0
并且适用于PHP5.6
#!/bin/bash
sudo update-alternatives --set php /usr/bin/php5.6
sudo pecl config-set php_ini /etc/php/5.6/cli/php.ini
sudo pecl config-set ext_dir /usr/lib/php/20131226/
sudo pecl config-set bin_dir /usr/bin/
sudo pecl config-set php_bin /usr/bin/php5.6
sudo pecl config-set php_suffix 5.6
但是它们并没有帮助我,即使我切换到php7,pecl仍然给我列出了已经安装在php5.6上的扩展列表。
pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version State
amqp 1.7.1 stable
libevent 0.1.0 beta
stats 1.0.3 stable
对于php7.0来说,它应该是空的!
如何解决这个问题?
更新:
对于amqp,我只需安装php-amqp包而不使用pecl即可。
apt-get install php-amqp
目前尚无php7版本的libevent,但是我还没有找到在5.6和7版本之间切换pecl安装的方法,所以问题仍然存在。