(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

resource zip_read ( resource $zip ) Считывает следующую запись в ZIP-архиве. ### Список параметров zip ZIP-файл, предварительно открытый с помощью функции zip_open(). ### Возвращаемые значения Возвращает запись каталога для дальнейшего использования с функциями zip_entry_..., или FALSE, если больше нет записей для чтения, или код ошибки, если она произошла. ### Смотрите также • zip_open() - Открывает ZIP-архив • zip_close() - Закрывает дескриптор ZIP-архива • zip_entry_open() - Открывает директорию для чтения • zip_entry_read() - Читает данные из открытого ранее дескриптора директории ## Коментарии  If you get an error like this: Warning: zip_read() expects parameter 1 to be resource, integer given in xxxxxx on line x It's because zip_open() failed to open the file and returned an error code instead of a resource. It took me a while to figure out why it failed to open the file, until I tried to use the FULL path to the file. <?php // Even if the file exists, zip_open() will return an error code.$file = 'file.zip'; $zip = zip_open($file); // The workaround: $file = getcwd() . '/file.zip'; // Or:$file = 'C:\\path\\to\\file.zip'; ?> This worked for me on Windows at least. I'm not sure about other platforms. 
2007-09-29 16:29:29
 Note: Only the first 65535 entries will be returned, even if your archive contains more entries. See https://bugs.php.net/bug.php?id=59118 for details. 
 *Here is a simple example* <?php $zp = zip_open('file.zip'); while ($file = zip_read($zp)) { echo zip_entry_name($file).PHP_EOL; } ?> The output will be something similar to: myfile.txt mydir/