我尝试使用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文件。
关于为什么会发生这种情况的任何想法?
答案 0 :(得分:3)
原来该文件正在以ASCII格式上传,我将其更改为上传为二进制文件。