Я пытаюсь распаковать zip-файл, содержащий, возможно, более 1500 pdf-файлов.Сжатый файл должен быть распакован по частям в папку, чтобы не переполнять память сервера файлом размером 20 МБ.
Я уже нашел пример того, как распаковать его по частям.Однако этот метод не создает каталог или что-то, в котором могут быть просмотрены распакованные файлы.Он создает только один файл, который не является каталогом, который снова выглядит как новый zip-файл.
$sfp = gzopen($srcName, "rb");
$fp = fopen($dstName, "w+");
while ($string = gzread($sfp, 4096)) {
fwrite($fp, $string, strlen($string));
}
gzclose($sfp);
fclose($fp);
Эта функция создает некоторый файл, который выглядит как еще один zip-файл, как описано выше.Если я создаю папку, я хочу сначала распаковать ее и использовать в качестве $ dstName, она выдаст предупреждение, что не может найти файл.Также, когда я позволяю ему создать «файл» с «/» в конце целевой ссылки, он выдает это предупреждение.
Использование opendir вместо fopen не выдает предупреждение, но кажется, что ничего не извлеченозатем предположим, что обработчик имеет неправильный тип.
Как я могу разархивировать этот большой сжатый файл по частям в папку?