web-dev-qa-db-fra.com

PHP erreur: "L'extension Zip et la commande unzip sont manquantes et ignorées."

Lorsque je lance un composer update, je reçois ce message d'erreur:

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

Que dois-je faire pour activer les commandes Zip et unzip afin que composer puisse télécharger des dépendances?

93
b85411

Selon votre version de Linux et la version PHP, celles-ci peuvent varier. 

(Sudo) yum install Zip unzip php7.0-Zip
(Sudo) apt install Zip unzip php7.0-Zip

Ceci est une question très souvent posée, vous pourrez trouver plus d’informations utiles dans l’éther en cherchant <distro> php <version> Zip extension

216
Arrisar

Pour les serveurs avec PHP 5.6

Sudo apt-get install Zip unzip php5.6-Zip
35
Olawale

Pour Debian Jessie (qui est la valeur par défaut pour l'image PHP sur Docker Hub):

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

Vous pouvez omettre le --oui, mais c'est utile lorsque vous l'exécutez dans un fichier Docker.

19
Peter Breuls

Pour les distributions Ubuntu plus anciennes, à savoir 16.04, 14.04, 12.04 etc.

Sudo apt-get install Zip unzip php7.0-Zip
19
Goke Obasa

J'ai eu PHP7.2 sur un serveur Ubuntu 16.04 et cela a résolu mon problème:

Sudo apt-get install Zip unzip php-Zip

Mettre à jour

J'ai essayé cela pour Ubuntu 18.04 et j'ai également travaillé.

8
Aqib Ashef

J'utilise Ubuntu et avec la commande suivante a fonctionné

apt-get install --yes Zip unzip

4
Oscar David

Si vous utilisez Ubuntu et PHP 7.2 , utilisez ceci ...

Sudo apt-get update
Sudo apt-get install Zip unzip php7.2-Zip
3
aphoe

J'ai eu cette erreur lorsque j'ai installé Laravel 5.5 sur mon serveur cloud digitalocean (Ubuntu 18.04 et PHP 7.2) et que la commande suivante l'a corrigée.

Sudo apt install Zip unzip php7.2-Zip

0
Joyal

Actuellement, composer semble fonctionner sans la commande en ligne de commande Zip. L'installation de php-Zip devrait donc suffire --- MAIS un avertissement apparaît:

Comme il n’existe pas de commande 'décompresser' installée, les fichiers Zip sont décompressés à l’aide du fichier PHP Extension Zip . Cela peut entraîner des rapports non valides d'archives corrompues. L'installation de 'unzip' peut remédiez-les.

Voir aussi Existe-t-il un problème d'utilisation de php-zip (le compositeur nous en avertit)

0
Alex

Sur le menu fixe avec l'image php:7.2-Apache je n'avais besoin que de Zip et de décompresser. Pas besoin de php-zip:

apt-get install Zip unzip

ou Dockerfile

RUN ["apt-get", "update"]
RUN ["apt-get", "install", "-y", "Zip"]
RUN ["apt-get", "install", "-y", "unzip"]
0
Armel Larcier