关于php7.2版本对ZipArchive报错:
引用文本PHP Warning: PHP Startup: Unable to load dynamic library ‘zip.so’ (tried: /usr/lib/php/20170718/zip.so (/usr/lib/php/20170718/zip.so: undefined symbol: zip_libzip_version), /usr/lib/php/20170718/zip.so.so (/usr/lib/php/20170718/zip.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
主要解决方案:
- 到ubuntu_libzip上下载最新的libzip1.5.1+libzip1.5.1-dev,并安装,如果安装有确实依赖项问题可以线用apt安装libzip5。
sudo dpkg -i libzip-dev_1.5.1-0ubuntu1_amd64.deb libzip5_1.5.1-0ubuntu1_amd64.deb
- 之后安装php-zip和php-dev,为pecl编译php-zip做准备
sudo apt install php-zip php-dev
- 升级php-zip到支持最新的libzip
sudo pecl install zip
之后就可以正常使用ZipArchive了
PHP 7.2.34-4+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Oct 18 2020 21:18:57) ( NTS )
Copyright © 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright © 1998-2018 Zend Technologies
with Zend OPcache v7.2.34-4+ubuntu16.04.1+deb.sury.org+1, Copyright © 1999-2018, by Zend Technologies