Berry Framework

Фреймворк, в который собраны функции использованные в различных проектах. В том числе: ORM, шаблонизатор и ряд других полезных в хозяйстве вещей.

Скачать
trunk-версия (650 КБ)
Наверх

Archive

Класс для работы с ZIP- и TAR-архивами.

Методы

archive->__construct()

Тип архива определяется в конструкторе по расширению:

  • ZIP - .zip;
  • TAR - .tar, .bz, .bz2, .gz или .tgz.
  • Для конструктора без разницы создаёте вы архив или открываете.

    Пример

    $archive = new Archive('path/to/file.zip');

    archive->is_valid()

    Проверяет обьект: верное ли расширение указали, сможет ли класс работать.

    archive->compact()

    Пакует файлы в архив. Вторым параметром можно указать true, тогда метод вернёт содержание архива, а не запишит в файл.

    Пример

    $archive->compact(array(
        // директория - просто значение без ключа
        'dir',
    
        // 'имя файла в архиве' => 'содержание файла'
        'text.txt' => 'Test',
        'dir/in_dir_test.txt' => 'Всё очень просто'
    ));

    archive->files()

    Список всех файлов.

    Пример

    print_r($archive->files());
    
    /* Array
    (
        [0] => Array
            (
                [filename] => test.txt
                [stored_filename] => test.txt
                [size] => 1145
                [compressed_size] => 448
                [crc] => E2D5CD5F
                [mtime] => 1252866962
                [comment] =>
                [folder] => 0
                [index] => 0
                [status] => ok
            )
    
    ) */

    archive->extract()

    Распаковать архив.

    Пример

    $archive->extract('to/dir/');