Мне нужно прочитать содержимое одного файла «test.txt» внутри zip-файла. Весь zip-файл – очень большой файл (2gb) и содержит много файлов (10 000 000), и поэтому извлечение всего этого не является жизнеспособным решением для меня. Как я могу прочитать один файл?
Попробуйте использовать zip://
wrapper :
$handle = fopen('zip://test.zip#test.txt', 'r'); $result = ''; while (!feof($handle)) { $result .= fread($handle, 8192); } fclose($handle); echo $result;
Вы также можете использовать file_get_contents
:
$result = file_get_contents('zip://test.zip#test.txt'); echo $result;
Я думаю, вы хотите zip_entry_open .