ZipArchive :: open()期望参数1是一个有效的路径,给定字符串

时间:2014-03-17 18:02:14

标签: php zip

$fver = str_replace(".","a",$arrMatches[1]);
$download = "ENU2v" . $fver . ".zip";
$zip = new ZipArchive;
if ($zip->open($download, ZipArchive::CREATE) !== TRUE) 
{
    die ("An error occurred creating your ZIP file.");
}

以下代码因问题标题中的错误而失败。 但是,如果我们将第一行更改为:

$download = "ENU2v.zip";

然后它确实有效。错误在哪里?出了什么问题?

1 个答案:

答案 0 :(得分:1)

执行:

$fver = str_replace(".","a",$arrMatches[1]);
$download = "ENU2v" . $fver . ".zip";
$zip = new ZipArchive;
$res = $zip->open($download, ZipArchive::CREATE);
if ($res !== TRUE) {
    die ("An error occurred creating your ZIP file. Code: " . $res);
}

错误代码是什么?

错误代码:

  • ZIPARCHIVE :: ER_EXISTS - 10(文件已存在。)
  • ZIPARCHIVE :: ER_INCONS - 21(Zip档案不一致。)
  • ZIPARCHIVE :: ER_INVAL - 18(无效参数。)
  • ZIPARCHIVE :: ER_MEMORY - 14(Malloc失败。)
  • ZIPARCHIVE :: ER_NOENT - 9(没有这样的文件。)
  • ZIPARCHIVE :: ER_NOZIP - 19(不是zip存档。)
  • ZIPARCHIVE :: ER_OPEN - 11(无法打开文件。)
  • ZIPARCHIVE :: ER_READ - 5(读取错误。)
  • ZIPARCHIVE :: ER_SEEK - 4(寻求错误。)