Мне нужно создать большой zip-архив из файлов jpg. Генерация zip перерывается на 64 МБ. Нет никакого способа увеличить ограничение памяти на хостере.
Я перепробовал много методов для создания zip-файлов, но все не удалось:
Может быть, есть другой способ создания zip-файлов с использованием потоковых / временных файлов с низким объемом памяти?
Спасибо за предложения
Вы можете попробовать set_time_limit (sec) или ini_set (‘max_execution_time’, sec) в вашем скрипте.
Вы можете попробовать что-то вроде этого
initialise your zip class
foreach ( files in the directory as $idx => $name) {
add $name to your zip file;
// every 10 files zipped, reset the max_execution_time
if ( $idx > 0 && $idx % 10 == 0 ) {
set_time_limit ( 30 ); //if it doesnt work try to use ini_set('max_execution_time', 30);
}
}
Он будет сбрасывать max_execution_time на 30 секунд каждые 10 файлов, которые вы заархивировали.
Я использовал 10 файлов в качестве примера, вы можете установить его в зависимости от вашего среднего размера файла.
Других решений пока нет …