dongqing6661
2014-02-07 08:56
浏览 74
已采纳

php ZipArchive - 仅添加不是父文件夹的文件

I am creating a zip archive in php and want to add some pdf files available in my pdfs_lib folder.I have successfully created the archive but there is a problem that inside the created zip archive, files get added into pdfs_lib folder, which is not what i want.

I want to add pdf files present in pdfs_lib folder directly into the archive instead of adding those files inside pdfs_lib folder in my created zip archive.

What i have tried is:

    // Create Zip File
    $zip = new ZipArchive;
    $res = $zip->open("pdfs_lib/my_zip_archive.zip", ZipArchive::CREATE);
    if ($res === TRUE)
    {
        // Add pdf file to zip archive
        $zip->addFile("pdfs_lib/pdf_file_1.pdf");
        $zip->addFile("pdfs_lib/pdf_file_2.pdf");

        $zip->close();
        echo 'ok';
    } else {
        echo 'failed';
    }

This code creates the zip archive successfully but whwen i unzip the archive it creates a pdfs_lib folder and unzip all files inside this newly created folder.

Any suggestion on how to create a zip archive without add pdf_lib folder in it.

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

  • douxi9245 2014-02-07 09:03
    最佳回答

    Change the addFile calls to:

    $zip->addFile("pdfs_lib/pdf_file_1.pdf", "pdf_file_1.pdf");

    The second parameter is the 'localname', the name used in the zipfile itself. If you leave out the folderpath there, it will be added to the root in the zipfile.

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题