2014-10-30 35 views
2

当我在新服务器上使用PHPExcel时, 我遇到了错误“Class'ZipArchive'not found”,它似乎被我的托管服务提供商阻止。在使用PHPExcel时发现类'ZipArchive'找不到错误

我不能在没有Zip支持的服务器上使用PHPExcel? PHP 5.2.8安装在此服务器上,但我无法使用PHPExcel的基本PHP源代码。

任何帮助将不胜感激, 谢谢。

+0

['ZipArchive'](http://php.net/manual/class.ziparchive.php)应该出现在5.2.8系统上。无论如何,5.2是[不再支持](http://php.net/eol.php)。你应该搬到一个更好的主机 – Phil 2014-10-30 02:29:18

+0

如果你只使用PHP 5.2.8,那么我强烈建议你使用hobnail启动你的托管服务提供商,直到他们将你的PHP升级到一个仍处于主动支持状态的版本 – 2014-10-30 08:05:36

+0

可能[PHPExcel ZipArchive not found]的副本(https://stackoverflow.com/questions/25176999/phpexcel-ziparchive-not-found) – algorhythm 2017-09-12 15:50:33

回答

8

某些电子表格文件格式(例如Excel 2007及更高版本用作默认格式的OfficeOpenXML)需要ZipArchive。在最新版本的PHP中,ZipArchive总是可用的,但在PHP 5.3之前,它需要作为PHP扩展手动安装在某些系统上。

如果您尚未安装ZipArchive /你的PHP启用,并且无法自行启用它,那么你可以使用

PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); 

PCLZip包含在PHPExcel分布作为替代PHP的内置-in ZipArchive类,尽管它比较慢。启用PCLZip,即使没有ZipArchive,也可以使用基于zip的电子表格格式。

然而,当我们第一次捆绑PCLZip(最初在PHPExcel 1.7.6),它编写基于压缩的格式时,不读书的时候他们只有一种选择。我们在PHPExcel 1.8.0中对此进行了更改,因此启用PCLZip现在允许您阅读基于zip的格式并编写它们。

的PHPEXcel阅读文档详细介绍了不同的电子表格格式,并解释哪些是拉链为主。 PHPEXcel Reader documentation

+0

真的吗? doco说这是在PHP 5> = 5.2.0 – Phil 2014-10-30 23:58:24

+1

无论文档说什么,早期版本的Windows平台上的可用性肯定存在问题比5.3.0,我相信它必须配置为Linux版本以及....我不得不面对很多ZipArchive存在问题的人,因此我不得不介绍PCLZip替代品 – 2014-10-31 00:14:00

+0

谢谢你的回答。它帮助我了解什么是错的。我们可以举一个例子来说明如何使用PHPExcel_Settings :: setZipClass(PHPExcel_Settings :: PCLZIP); ? – 2016-01-14 19:02:43

相关问题