PHP错误:“zip扩展和解压缩命令都丢失,跳过。”

当我运行一个composer update我得到这个错误消息:

 Loading composer repositories with package information Updating dependencies (including require-dev) Failed to download psr/log from dist: The zip extension and unzip command are both missing, skipping. The php.ini used by your command-line PHP is: /etc/php/7.0/cli/php.ini Now trying to download from source 

我需要做什么来启用压缩和解压缩命令,使composer php可以下载依赖关系?

根据你的Linux和PHP版本的风格,这些可能会有所不同。

 (sudo) yum install zip unzip php7.0-zip (sudo) apt install zip unzip php7.0-zip 

这是一个非常常见的问题,您可以通过search<distro> php <version> zip extension来find更多有用的信息。

对于PHP 5.6的服务器

 sudo apt-get install zip unzip php5.6-zip 

对于Debian Jessie(这是Docker Hub上PHP图像的当前默认值):

 apt-get install --yes zip unzip php-pclzip 

你可以省略-yes,但是当你在Dockerfile中运行它的时候是很有用的。

对于较旧的Ubuntu发行版,即14.04,12.04等

 sudo apt-get install zip unzip php7.0-zip