我有一个名为 project.zip 的 zip 文件,其结构如下:
project.zip
\project
\file.pdf
我需要删除 file.pdf。我尝试了以下代码,但出现错误。
谢谢
$zip = new ZipArchive();
$zip_name = 'path\to\project.zip';
$zip->open( $zip_name );
$zip->deleteName( 'project\file.pdf' );
$zip->close();
我也尝试过使用前导反斜杠,但没有成功,
$zip->deleteName( 'prject\file.pdf' );
最佳答案
这很奇怪,但似乎您需要在文件名中包含 zip 文件的基本名称,如下所示:
$zip->deleteName( 'project/project/file.pdf' );
尝试这样的操作来查看 zip 中的文件名值:
for ($i = 0; $i < $zip->numFiles; $i++) {
$filename = $zip->getNameIndex($i);
echo $filename . "<br>";
}
完成后别忘了拉上 zipper
$zip->close();
关于php - 从 zip 内的目录中删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17330828/