[转]PHPExcel使用:Fatal error: Class ‘ZipArchive’ not found的解决方法

转载自:http://www.u85.us/viewnews-1454.html

出现这个错误说明是程序在调用’ZipArchive’ 这个类的时候没有成功,原因是由于在安装php的时候没有增加php zip的支持(非zlib)。

在Windows下的解决办法是

1、在php.ini文件中,将extension=php_zip.dll前面的分号“;”去除,然后同样在php.ini文件中,将 zlib.output_compression = Off 改为 zlib.output_compression = On ;

2、重启Apache服务器。

在Unix/Linux下的解决办法

1、在Linux下没有php_zip.dll这个文件(有也不会起作用的),所以需要重新编译一下php的zip模块。具体安装方法如下:

cd /usr/src
wget http://pecl.php.net/get/zip
tar -zxvf zip
cd zip-1.x.x
phpize
./configure
make
sudo make instal

其中, 在最后使用make install命令的时候,可能需要用到root的权限,所以建议使用sudo来运行。安装完之后,屏幕上会提示zip.so的位置。然后将其记录下来, 如:/usr/local/lib/php/extensions/zip.so。

2、使用root权限修改php.ini(通常可能会在/usr/local/lib/文件夹下,不过视当初安装php而定,可以通过 phpinfo()来查看):

增加extension = /usr/local/lib/php/extensions/zip.so,然后同样在php.ini文件中,将 zlib.output_compression = Off 改为 zlib.output_compression = On ;

3、最后别忘了重启一下Apache:apachectl restart;

这个针对php的zip模块就安装完成了,能够在php中使用ZipArchive类了。

重要的:

我在linux下安装zip扩展时总是报错,好像和pcre有关,但又找不到解决办法,最后还是升级到了php5.3解决了这个问题。

注:php5.2以后自动支持zip扩展.

posted on 2011-09-30 15:01  DavidYanXW  阅读(712)  评论(0编辑  收藏  举报