Невозможно прочитать все файлы, используя "zip_read" из zip-файла - PullRequest
0 голосов
/ 24 января 2019

Я должен просмотреть все файлы в zip-файле, который содержит около 65000 файлов. Но он может читать только 315 файлов.

Невозможно найти причину, в журнале ошибок нет ошибок. Я использовал следующий код:

<?php
$zip = zip_open($newfile);
if ($zip) {
    $counter = 0;
    while ($zip_entry = zip_read($zip)) {
        $counter++;
        $filename = zip_entry_name($zip_entry);
        echo $counter . "-" . $filename . "<br/>";      
    }
    zip_close($zip);
}

1 Ответ

0 голосов
/ 24 января 2019

Количество файлов в (обычном) zip-файле хранится в unsigned 16 bit integer.Это означает, что максимальное значение равно 65535.

Может ли быть, что в этом zip-файле содержится более 65535 энтов, и что это целое число переполняется и в вашем случае отображается только num_files - 65536, 315?

...