由于支付宝SDK只支持php7.1,因为需要删除之前安装的7.2版,进行降级。通过yum remove不能完全删除php,必须通过rpm方式卸载。由于php安装模块间有依赖,因此需要按顺序进行卸载。如下:
- rpm -e php72w-fpm-7.2.13-1.w7.x86_64
- rpm -e php72w-mysqlnd-7.2.13-1.w7.x86_64
- rpm -e php72w-pecl-redis-3.1.6-1.w7.x86_64
- rpm -e php72w-pecl-igbinary-2.0.5-1.w7.x86_64
- rpm -e php72w-pdo-7.2.13-1.w7.x86_64
- rpm -e php72w-pear-1.10.4-1.w7.noarch
- rpm -e php72w-devel-7.2.13-1.w7.x86_64
- rpm -e php72w-cli-7.2.13-1.w7.x86_64
- rpm -e php72w-embedded-7.2.13-1.w7.x86_64
- rpm -e php72w-xml-7.2.13-1.w7.x86_64
- rpm -e php72w-gd-7.2.13-1.w7.x86_64
- rpm -e php72w-bcmath-7.2.13-1.w7.x86_64
- rpm -e php72w-process-7.2.13-1.w7.x86_64
- rpm -e php72w-mbstring-7.2.13-1.w7.x86_64
- rpm -e php72w-opcache-7.2.13-1.w7.x86_64
- rpm -e php72w-common-7.2.13-1.w7.x86_64
此外重新安装php7.1的时,安装mysqlnd扩展是会与自带的mysql扩展冲突,必须先卸载mysql扩展再安装。
- rpm -qa|grep mysql
- rpm -e php71w-mysql-7.1.26-1.w7.x86_64
- yum -y install php71w-mysqlnd.x86_64
如果不安装mysqlnd扩展,在链接数据库时(如使在CI中指定mysqli驱动,lumen默认pdo没有这个问题)可能由于库的头文件版本太低导致链接数据库失败。