帮助php函数zip_open


Help with php function zip_open

现在是凌晨5点,尽管我试图研究,但我找不到关于这个函数集的太多信息。下面是我的代码(稍微缩短):

<?php
$source = $_FILES["restore_file"]["tmp_name"];
$zip = zip_open($source);
while ($zip_entry = zip_read($zip)) {
    echo zip_entry_name($zip_entry).''n';
}
?>

,当我上传我的示例zip输出时,它会输出:

example/
example/index.php
example/file1.csv
example/file2.csv
example/file3.csv
etc.

我需要知道如何访问这些文件的内容,并且还能够指定我正在访问的文件。例如,在检查csv文件之前,我需要检查存档的index.php文件中的php变量,以确保它是正确的。

是使用ZipArchive类一个更好的主意,而不是zip函数也许?我的印象是使用zip函数会更好,因为它可以动态访问文件(而不必将文件传输到新目录)。

使用ZipArchive::getFromName()。根据您的情况改编的PHP手册中的示例:

$zip = new ZipArchive();
if ($zip->open($_FILES["restore_file"]["tmp_name"]) === true) {
    echo $zip->getFromName('example/index.php');
    $zip->close();
} else {
    echo 'failed';
}