Codeigniter и загрузка zip-файлов - PullRequest
3 голосов
/ 14 декабря 2009

В настоящее время я создаю бэкэнд для сайта с использованием платформы codeigniter, у меня возникла небольшая проблема, мне нужен способ, позволяющий пользователю загружать заархивированную папку с изображениями, после заполнения формы zip-папка должна распаковать, и файлы необходимо переместить в другую папку на сервере, создать уменьшенную версию каждого изображения и добавить туда имя файла в БД, а также, если изображения относятся к типу контента, который еще не создан существует, то мне нужно сделать каталог с этим типом контента.

Я знаю, что в Codeigniter есть класс для выгрузки, но я не уверен, что, у которого есть возможности, делать то, что мне нужно, я действительно мог бы сделать несколько советов, пожалуйста?

Спасибо

Ответы [ 2 ]

4 голосов
/ 14 декабря 2009

Как указал Ян, это широкий вопрос (например, 3 или 4 вопроса). Я не в курсе инфраструктуры CodeIgniter, но Чтобы распаковать файлы , вы можете сделать что-то вроде этого:

function Unzip($source, $destination)
{
    if (extension_loaded('zip') === true)
    {
        if (file_exists($source) === true)
        {
            $zip = new ZipArchive();

            if ($zip->open($source) === true)
            {
                $zip->extractTo($destination);
            }

            return $zip->close();
        }
    }

    return false;
}

Unzip('/path/to/uploaded.zip', '/path/to/extract/');
3 голосов
/ 14 декабря 2009

Вы не сможете выполнять проверку изображений или файлов с помощью класса Upload. Класс загрузки позволит вам принять файл и проверить, что он является ZIP-файлом, но это все, что нужно.

Оттуда, распакуйте файл и просто сделайте простой PHP на файлах, чтобы проверить, что они имеют правильный тип, и создайте ваши папки и т. Д. Я бы поместил эту логику в новую библиотеку для разделения правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...