PHPExcel ZipArchive не найден

Я только что загрузил пакет PHPExcel, и я попытался импортировать электронную таблицу Excel, но все, что я получаю, – это ошибка, которую ZipArchive not found . Я работаю над Windows, но сервер работает на Linux. Я проверил php.ini чтобы узнать, отключен ли php_zip, но его там даже не было.

Я попытался установить его с помощью PECL: $ pecl install zip

No releases availble for package "pecl.php.net/zip" Cannot initialize 'channel://pecl.php.net/zip', invalid or missing package file Package "channel://pecl.php.net/zip" is not valid install failed

А также pear install zip-1.10.2.tgz но получил почти то же сообщение.

У меня нет прав на сервер, возможно, так? В любом случае, не могли бы вы мне помочь?

Некоторые форматы файлов электронных таблиц, такие как OfficeOpenXML, используемые в качестве формата по умолчанию в Excel 2007 и выше, требуют ZipArchive. В самых последних версиях PHP ZipArchive всегда доступен, но до PHP 5.3 он должен быть установлен вручную как расширение PHP.

Как @briosheje говорит, что если у вас нет ZipArchive, установленного / включенного для вашего PHP, вы можете использовать

 PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); 

PCLZip включен в дистрибутив PHPExcel в качестве альтернативы встроенному в PHP классу ZipArchive, хотя он довольно медленный. Включение PCLZip позволяет работать с форматами таблиц на основе zip даже без ZipArchive.

Однако, когда мы впервые связали PCLZip (первоначально в PHPExcel 1.7.6), это был только вариант при написании ZIP-форматов, а не при их чтении. Мы изменили это в PHPExcel 1.8.0, поэтому включение PCLZip теперь позволяет читать форматы на основе zip, а также записывать их.

В документации PHPEXcel Reader подробно описаны различные форматы электронных таблиц и объясняется, какие из них основаны на zip-основе.

В моем случае у меня есть PHP 5.4
После использования PHPExcel я столкнулся с этим исключением.

 FatalErrorException in Excel2007.php line 94: Class 'ZipArchive' not found 

Решил его, добавив эту строку в PHPExcel / Reader / Excel2007.php

 PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); 

перед вызовом метода getZipClass.

 $zipClass = PHPExcel_Settings::getZipClass(); 

Вам необходимо установить расширение для php, называемое php-zip и zip-программой на вашей Linux-машине.

Я нашел простое решение

  1. Войдите в свой cpanel
  2. перейти к программному обеспечению> выберите версию PHP
  3. выберите PHP версию 7.0 и нажмите кнопку «Установить» как текущую кнопку
  4. check zip checkbox
  5. нажмите «Сохранить»

Теперь вы обновляете свой сайт, чтобы скачать файл excel