Linux下编译安装PHP扩展zip模块的方法
1、依次运行以下命令
下载地址:PECL :: Package :: zip (php.net)

wget http://pecl.php.net/get/zip-1.14.0.tgz
tar zxvf zip-1.14.0.tgz
cd zip-1.14.0
/home/php/bin/phpize //对应的phpize路径,通过whereis phpize找到目录路径
./configure --with-php-config=/opt/php/bin/php-config (对应的php-config路径) 如果报错:please reinstall the libzip 那么得安装这个依赖,见下面安装方法
make && make install
卸载旧版本libzip
yum remove -y libzip
安装cmake3
yum install -y cmake3
sudo ln -sf /usr/bin/cmake3 /usr/bin/cmake
下载libzip
wget https://libzip.org/download/libzip-1.5.2.tar.gz //依次编译安装完,注意要小于1.5.0的,要不然得用cmake3
tar zxvf libzip.tar.gz
cd libzip-1.5.2
使用cmake3编译安装libzip
mkdir build && cd build
cmake ..
make && make install
2、以上安装后,生成的模块路径,最后面会有so的路径返回显示的
/home/php/lib/php/extensions/no-debug-non-zts-20050922/zip.so
3.修改php.ini
vim /etc/php.ini extension_dir = "/home/php/lib/php/extensions/no-debug-non-zts-20050922/" //根据你的实际路径写 extension="zip.so" //貌似不加双引号也可以
4、如果报libzip.so错误
则执行以下指令:
ldconfig /usr/local/lib
ldconfig /usr/local/lib64
5、附:在Windows下的解决办法就比较简单了 :
1、在php.ini文件中,将extension=php_zip.dll前面的分号“;”去除
然后同样在php.ini文件中,将 zlib.output_compression = Off 改为 zlib.output_compression = On ;
6、重启apache或php-fpm
service php-fpm reload //如果没有service操作命令,可以先ps -ef|grep php-fpm 再kill掉它,执行./php-fpm (记得要在php-fpm目录下执行)
