Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Ubuntu18.04和PHP7.2上将Libzip更新为1.2_Php_Encryption_Ubuntu Server_Ziparchive_Libzip - Fatal编程技术网

如何在Ubuntu18.04和PHP7.2上将Libzip更新为1.2

如何在Ubuntu18.04和PHP7.2上将Libzip更新为1.2,php,encryption,ubuntu-server,ziparchive,libzip,Php,Encryption,Ubuntu Server,Ziparchive,Libzip,我想在Ubuntu服务器18.04.1和PHP7.2.7上使用ZipArchive::setEncryptionName 问题是setEncryptionName至少需要1.2版的Libzip PHP信息中的默认配置: Zip版本1.15.2 Libzip版本1.1.2 我不知道如何在ubuntu服务器上更新Libzip,我在win和mac上没有这个问题。(1)找到更新版本的。目前,它是1.5.1下的Eoan貂。下载正确的deb文件(libzip-dev_1.5.1-0ubuntu1_amd64

我想在Ubuntu服务器18.04.1和PHP7.2.7上使用ZipArchive::setEncryptionName

问题是setEncryptionName至少需要1.2版的Libzip

PHP信息中的默认配置:
Zip版本1.15.2
Libzip版本1.1.2

我不知道如何在ubuntu服务器上更新Libzip,我在win和mac上没有这个问题。

(1)找到更新版本的。目前,它是1.5.1下的Eoan貂。下载正确的deb文件(libzip-dev_1.5.1-0ubuntu1_amd64.deb和libzip5_1.5.1-0ubuntu1_amd64.deb)

(2) 将它们安装在

sudo dpkg -i libzip-dev_1.5.1-0ubuntu1_amd64.deb libzip5_1.5.1-0ubuntu1_amd64.deb
它们可能缺少一些依赖项,您可以先尝试使用apt安装它们,这样您就不需要从Launchpad下载更多“不兼容”的软件包。然后重新运行此命令

(3) 安装php-zip。安装PEAR(PECL)将php zip升级到新版本。还要安装PECL构建PHPzip所需的PHPDev

sudo apt install php-zip php-pear php-dev
(4) 升级php zip以支持更新的libzip

sudo pecl install zip
(5) 可能您不再需要开发库了

sudo apt purge php-dev libzip-dev
sudo apt autoremove
(6) 如果您有正确的libzip版本,请参阅phpinfo()。您可能需要重新启动Web服务器

(7) 您可以防止apt自动升级php zip,破坏您的自定义安装。但是,您应该记住使用pecl手动升级php,或者检查较新版本是否支持较新的libzip。(请参阅sudo dpkg-l | grep-zip的安装版本)

sudo apt mark hold php zip
要恢复原始版本(假设您使用了libzip5,并且不需要以前安装的软件包):

sudo apt mark unhold php zip
sudopecl卸载zip
sudo apt purge php pear libzip5 php zip
sudoapt自动记忆
sudoapt安装php-zip

sudo-apt-get-update&&sudo-apt-get-install-libzip2
试试这个可能吗?不,
libzip2
-找不到libzip2包,如果我安装了
libzip4
-libzip4已经是最新版本(1.1.2-1.1)你有没有尝试过apt-get-install-php-zipyes,但没有帮助-php-zip已经是最新版本了(1:7.2+60ubuntu1)
sudo apt-mark hold php<installed version>-zip
sudo apt-mark unhold php<installed version>-zip    
sudo pecl uninstall zip
sudo apt purge php-pear libzip5 php-zip
sudo apt autoremove
sudo apt install php-zip