首页 >php教程 >php手册 >php使用ZipArchive提示Fatal error: Class ZipArchive not found in的

php使用ZipArchive提示Fatal error: Class ZipArchive not found in的

WBOY
WBOY原创
2016-06-06 20:18:021288浏览

这篇文章主要介绍了php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法,是使用ZipArchive时经常会遇到的问题,需要的朋友可以参考下

本文实例讲述了php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法。分享给大家供大家参考。具体如下:

ZipArchive是php自带的一个压缩与解压缩函数了,今天理所当然的情况中使用new ZipArchive来创建zip文件时碰到提示Fatal error: Class ZipArchive not found in错误,感兴趣的朋友就一起来看看解决方法。

测试代码如下:

复制代码 代码如下:

//PHP解压缩文件(zip)
function unzip_file($file, $destination){
$zip = new ZipArchive() ;
//打开压缩文件
if ($zip->open($file) !== TRUE) {
die ('Could not open archive');
}
//创建文件
$zip->extractTo($destination);
$zip->close();
echo '成功';
}
unzip_file("htdocs.zip","wenjianming");

执行时发现
Fatal error: Class 'ZipArchive' not found in E:wwwqqdown.php on line 63
看这个不是未定义了,,所以小编百度搜索一下,如下如下解说

在Windows下的解决办法是:

1、在php.ini文件中,将extension=php_zip.dll前面的分号“;”去除;
重启Apache服务器,我们再试发现可以了

补充:

如果是linux系统参考下面方法

在Linux下没有php_zip.dll这个文件
需要重新编译一下php的zip模块。具体安装方法如下:

复制代码 代码如下:

cd /usr/src
wget
tar -zxvf zip
cd zip-1.x.x
phpize
./configure
make
sudo make install


其中, 在最后使用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;

注意:关于网站有一些朋友说zlib.output_compression = Off 改为 zlib.output_compression = On ; 我在windows下没有操作在php.ini文件中也没有看到但这样确实是可以生成或解压文件。

希望本文所述对大家的PHP程序设计有所帮助。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn