Я только что загрузил пакет 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-машине.
Я нашел простое решение
Теперь вы обновляете свой сайт, чтобы скачать файл excel