вівторок, 1 лютого 2011 р.

Создание и распаковка zip-архивов с помощью PHP скрипта

На основе этих двух скриптов можно расширить функционал сайта, например, предоставив пользователям предварительно архивировать файлы перед скачиванием для уменьшения трафика или запаковывать несколько файлов в один архив для удобства скачивания, а также можно принимать от пользователей файлы в сжатом виде и распаковывать их на сайте. Еще один способ использования данного скрипта – создание бекапов с отправкой их на мыло. Скрипт отправки вложений в письмах с помощью php я описывал в соответсвующей статье. В общем, все зависит от вашей фантазии :-)

Php-скрипт для архивирования файлов из папки.

 open($fileName, ZIPARCHIVE::CREATE) !== true) {
        echo "Ошибка при создании архива.";
        exit;
    }
    //добавляем файлы в архив все файлы из папки src_dir
    $dirHandle = opendir($src_dir);
    while (false !== ($file = readdir($dirHandle))) {
        $zip->addFile($src_dir.$file, $file);
    }
    //закрываем архив
    $zip->close();
    echo "Архив создан. Скачать";
?>

Кратко распишу, что все это значит:
2 строка – папка, в которой будет создан архив,
3 строка – папка, где будут находиться файлы для архивирования,
9 строка – задаем имя создаваемого zip-файла.
В этих трех строках можно подставить свои значения исходя из ситуации, остальные строки менять не надо.

Архив создан. Теперь посмотрим как его распаковать.

open('file.zip') === TRUE) {
        $zip->extractTo('unzip_folder/');
        $zip->close();
    }
?>

В 4 строке вместо file.zip укажите путь к своему zip-файлу. В 5 строке укажите свой каталог, куда будет распаковано содержимое архива.

Немає коментарів:

Дописати коментар

HyperComments for Blogger

comments powered by HyperComments