我有一个问题,我在Linux服务器上安装'Archive_Zip 0.1.1',但是当我尝试运行脚本来创建zip文件时,它会给出致命的错误
致命错误:
ZipArchive
在...中找不到类
我把代码放在哪里
$zip = new ZipArchive; var_dump($zip); $res = $zip->open($filename, ZipArchive::OVERWRITE); if ($res !== TRUE) { echo 'Error: Unable to create zip file'; exit; } if (is_file($src)) { $zip->addFile($src); } else { // echo "
" . dirname(__FILE__) . $src;//'/install1'; if (!is_dir($src)) { $zip->close(); @unlink($filename); echo 'Error: File not found'; exit; } recurse_zip($src, $zip, $path_length); } $zip->close(); echo "
file name ".$filename;
但它找不到类文件.
请告诉我解决方案.我该怎么做才能解决问题?我也把php.ini
文件放到脚本所在的文件夹中,但它不起作用.
对于要出现的ZipArchive
类,PHP需要安装zip扩展.
有关安装说明(Linux和Windows),请参阅此页面.
在使用Ubuntu + nginx + php7的Amazon ec2上,我遇到了同样的问题,使用以下方法解决了它:
sudo apt-get install php7.0-zip
在ubuntu桌面上,我不得不这样做.
sudo apt-get install php5.6-zip
这安装了库,但我仍然遇到同样的错误,所以我不得不重启apache:
sudo service apache2 restart
它起作用了.
我在这里没有看到它,所以我想在Debian/Ubuntu上添加它,你可能需要在安装相关包之后启用扩展.所以:
sudo apt-get install php-zip sudo phpenmod zip sudo service apache2 restart
首先,远程服务器的解决方案:
如果您使用的是cpanel,则可能已安装zip扩展但未激活.你需要激活它.对于这种情况,您需要转到cpanel>软件内部>点击PHP版本.然后找到拉链并检查它.现在保存.
你应该看到像这样的形象.
刷新页面.错误应该消失.
注意:如果找不到,请联系服务提供商.他们会为你安装.
这很有效
apt-get install php7.0-zip
而无需php7.0-fpm
手动重启.
解包
php7.0-zip
(7.0.16-4+deb.sury.org~trusty+1
)...
处理触发器php7.0-fpm
(7.0.11-1+deb.sury.org~trusty+1
)...
php7.0-fpm
停止/等待
php7.0-fpm
启动/运行,进程1572
php7.0-fpm
停止/等待
php7.0-fpm
启动/运行,进程1777
设置php7.0-zip
(7.0.16-4+deb.sury.org~trusty+1
)...
语言环境:无法设置LC_ALL
为默认语言环境:没有这样的文件或目录
/etc/php/7.0/mods-available/zip.ini
使用新版本创建配置文件
处理触发器php7.0-fpm
(7.0.11-1+deb.sury.org~trusty+1
)...
php7.0-fpm
停止/等待
php7.0-fpm
启动/运行,进程2354
php7.0-fpm
停止/等待
php7.0-fpm
启动/运行,进程2397