Создание ZIP архива средствами PHP

В этом посту мы расскажем, как при помощи PHP создать ZIP архив из нескольких файлов. Это можно применить в коммерческих веб проектах: архивировать PDF, изображения, документы и так далее и отдавать на скачивание.

HTML

Форма состоит из списка чекбоксов с именем files[]:

<form name="zips" method="post">

<input type="checkbox" name="files[]" value="flowers.jpg" />
<img src="/files/image.png" />
flowers.jpg

<input type="checkbox" name="files[]" value="fun.jpg" />
<img src="/files/image.png" />
fun.jpg

<input type="checkbox" name="files[]" value="9lessons.docx" />
<img src="/files/doc.png"   />
9lessons.docx
........
<input type="submit" name="createpdf" value="Download as ZIP" /> 
<input type="reset" name="reset"  value="Reset" />
</form>

PHP

Помещаем выбранные файлы в ZIP формат:

<?php
$error = "";
if(isset($_POST['createpdf']))
{
$post = $_POST;
$file_folder = "files/"; // папка с файлами
if(extension_loaded('zip'))
{
if(isset($post['files']) and count($post['files']) > 0)
{
// проверяем выбранные файлы
$zip = new ZipArchive(); // подгружаем библиотеку zip
$zip_name = time().".zip"; // имя файла
if($zip->open($zip_name, ZIPARCHIVE::CREATE)!==TRUE)
{

$error .= "* Sorry ZIP creation failed at this time";
}
foreach($post['files'] as $file)
{
$zip->addFile($file_folder.$file); // добавляем файлы в zip архив
}
$zip->close();
if(file_exists($zip_name))
{
// отдаём файл на скачивание
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);
// удаляем zip файл если он существует
unlink($zip_name);
}

}
else
$error .= "* Please select file to zip ";
}
else
$error .= "* You dont have ZIP extension";
}
?>


Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/5ijPiGB_emw/lessons.php

Читать комменты и комментировать

Добавить комментарий / отзыв



Защитный код
Обновить

Создание ZIP архива средствами PHP | | 2013-06-16 01:38:36 | | Статьи Web-мастеру | | В этом посту мы расскажем, как при помощи PHP создать ZIP архив из нескольких файлов. Это можно применить в коммерческих веб проектах: архивировать PDF, изображения, документы и так далее и отдавать | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: