Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP error: "The zip extension and unzip command are both missing, skipping."

Depending on your flavour of Linux and PHP version these may vary.

(sudo) yum install zip unzip php-zip
(sudo) apt install zip unzip php-zip

This is a very commonly asked question, you'll be able to find more useful info in the aether by searching <distro> php <version> zip extension.


For servers with PHP 5.6

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

Not to belabor the point, but if you are working in a Dockerfile, you would solve this particular issue with Composer by installing the unzip utility. Below is an example using the official PHP image to install unzip and the zip PHP extension for good measure.

FROM php:7.4-apache

# Install Composer
COPY --from=composer /usr/bin/composer /usr/bin/composer

# Install unzip utility and libs needed by zip PHP extension 
RUN apt-get update && apt-get install -y \
    zlib1g-dev \
    libzip-dev \
    unzip
RUN docker-php-ext-install zip

This is a helpful GitHub issue where the above is lovingly lifted from.


For Debian Jessie (which is the current default for the PHP image on Docker Hub):

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

You can omit the --yes, but it's useful when you're RUN-ing it in a Dockerfile.


For older Ubuntu distros i.e 16.04, 14.04, 12.04 etc

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

I had PHP7.2 on a Ubuntu 16.04 server and it solved my problem:

sudo apt-get install zip unzip php-zip

Update

Tried this for Ubuntu 18.04 and worked as well.


I'm Using Ubuntu and with the following command worked

apt-get install --yes zip unzip