память — добавление файла в zip-файл с содержимым во время загрузки переполнения стека

Я хочу добавить файл .txt в ZIP-файл с изображениями.
пока загружается zip, я хочу добавить файл .txt, не затрагивая оригинальный файл.

так можно ли это сделать? или единственный способ — распаковать zip-файл во временную папку, затем добавить txt-файл и удалить его?

Я пробовал с tmpfile, но он просто создает временный файл

2

Решение

Вы можете сделать что-то вроде этого:

$files = array(
'file1',
'file2'
);

$tmp_file = tmpfile();
$zip->open($tmp_file, ZipArchive::CREATE);

# loop through each file
foreach($files as $file){

# download file
$download_file = file_get_contents($file);

#add it to the zip
$zip->addFromString(basename($file),$download_file);
}

# close zip
$zip->close();

# send the file to the browser as a download
header('Content-disposition: attachment; filename=new-zipfile.zip');
header('Content-type: application/zip');
readfile($tmp_file);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]