>백엔드 개발 >PHP 튜토리얼 >Fatal error Class 'ZipArchive' not found ...... 的解决办法

Fatal error Class 'ZipArchive' not found ...... 的解决办法

WBOY
WBOY원래의
2016-06-20 13:04:002862검색

PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用该类之前首先需要确保PHP ZIP 扩展已经开启,如果没有开该类就直接使用的话,程序就会报出 Fatal error Class 'ZipArchive' not found ...... 这种错误,下面本文就这种错误分享一下解决办法。

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

那么处理步骤如下:

(1)确认 php 安装文件夹下的 ext 文件夹中是否具有 php_zip.dll 这个文件

(2)保证以上文件存在的前提下,修改 php.ini 文件,去掉 extension=php_zip.dll 前面的";",开启 ZipArchive 扩展

(3)重启apache,即可

下面分别就 windows 系统和 linux 系统分别说明一下

具体步骤

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模块。

具体安装方法如下:

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

其中, 在最后使用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模块就安装就完成了经过以上处理,你的服务器应该就可以直接运行 ZipArchive 这个类了。

以上解决办法如有疑问和错误,欢迎留言纠正。


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.