未找到类“ZipArchive”:以非root身份安装它?

时间:2012-01-24 20:08:26

标签: php

我正在尝试实现一个简单的脚本来压缩文本文件,但ZIPArchive()在我的服务器上不可用。以下是我的代码示例:

<?php
$zip = new ZipArchive();
$filename = "./PJR.v2.zip";
if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
    exit("cannot open <$filename>\n");
}
if ($handle = opendir('WORKDIR')) {
    while (false !== ($entry = readdir($handle))) {
        if ($entry != "." && $entry != "..") {
        $zip->addFile($entry);
        }
    }
  closedir($handle);
}
$zip->close();
?>

当我从命令行运行它时,我得到了

PHP Fatal error:  Class 'ZipArchive' not found in /users/albert/zip_POC.v2.php on line 2

这是我服务器上的版本信息:

php -v
PHP 5.1.6 (cli) (built: Nov 12 2008 11:22:53)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

即使我不是'root'用户,有没有办法安装该类?

修改

在我的服务器上没有使用ZIP支持编译PHP。 PhpInfo()的configure command部分未显示--enable-zip选项。 PECL也没有安装,因此我无法解决pecl install zip的问题。

1 个答案:

答案 0 :(得分:0)

如果您无法使用ZipArchive进行安装或重建,那么您还可以尝试使用纯PHP PCLZip library