Ziparchive无法仅在PHP中打开zip文件

时间:2015-12-03 18:59:44

标签: php bash ziparchive

我尝试使用PHP ZipArchive类解压缩文件但是当我尝试时:

$file = '/path/to/zip/file.zip';
$zip = new ZipArchive();
$res = $zip->open($file, ZipArchive::CHECKCONS);

结果是ZipArchive::ER_INCONS(Zip档案不一致)

现在,我已经能够在桌面上打开zip文件(Windows 7),并在PHP应用程序所在的同一个框中使用bash命令行工具unzip正在运行(Ubuntu 12.04)。我甚至可以使用exec('unzip', $file);在PHP中解压缩该文件。

我已检查缓存文件夹和zip文件的权限,并且网络服务器具有读写权限。 我可以使用PHP的ZipArchive类在同一目录中打开其他zip文件。

我不确定它是否相关,但我尝试打开的zip文件包含两个zip文件。

关于为什么会发生这种情况的任何想法?

1 个答案:

答案 0 :(得分:3)

原来该文件正在以ASCII格式上传,我将其更改为上传为二进制文件。