在PHP中,我们可以使用ZipArchive类来操作ZIP文件,以下是一些基本的操作示例:
1、创建一个新的ZIP文件:
<?php $zip = new ZipArchive(); $filename = "example.zip"; if ($zip->open($filename, ZipArchive::CREATE) !== TRUE) { exit("无法打开 <$filename> "); } // 将文件添加到ZIP文件中 $zip->addFile("file1.txt"); $zip->addFile("file2.txt"); $zip->addFile("folder/"); // 将整个文件夹添加到ZIP文件中 $zip->close(); ?>
2、从ZIP文件中读取内容:
<?php $zip = new ZipArchive(); if ($zip->open("example.zip") === TRUE) { $index = $zip->locateName("file3.txt"); // 查找名为"file3.txt"的文件在ZIP文件中的位置 if ($index !== false) { $content = $zip->getFromIndex($index); // 从ZIP文件中读取指定位置的内容 echo "Content of file3.txt: " . $content; // 输出文件内容 } else { echo "file3.txt not found in example.zip"; // 如果找不到指定文件,则输出提示信息 } $zip->close(); } else { echo "Unable to open example.zip"; // 如果无法打开ZIP文件,则输出错误信息 } ?>
3、从ZIP文件中删除一个文件:
<?php $zip = new ZipArchive(); if ($zip->open("example.zip") === TRUE) { $index = $zip->locateName("file4.txt"); // 查找名为"file4.txt"的文件在ZIP文件中的位置 if ($index !== false) { $zip->deleteIndex($index); // 从ZIP文件中删除指定位置的文件 $zip->close(); // 关闭ZIP文件并保存更改 echo "File4.txt has been removed from example.zip"; // 输出提示信息 } else { echo "file4.txt not found in example.zip"; // 如果找不到指定文件,则输出提示信息 } } else { echo "Unable to open example.zip"; // 如果无法打开ZIP文件,则输出错误信息 } ?>
还没有评论,来说两句吧...