Распаковывает Phar-файл в phar-архиве

# PharFileInfo::decompress

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

PharFileInfo::decompress — Распаковывает Phar-файл в phar-архиве

### Описание

public function PharFileInfo::decompress(): true

Метод распаковывает файл в phar-архиве. Для работы функции потребуется включить модуль bzip2 или zlib, в зависимости от метода сжатия файла внутри архива. Как и с остальными функциями, которые изменяют содержимое phar-архива, для распаковки файла в Phar-архиве потребуется отключить INI-переменную phar.readonly; директива не ограничивает обработку архивов, с которыми работает класс PharData.

### Список параметров

Сигнатура функции не содержит параметров.

### Возвращаемые значения

Функция возвращает логическое значение `true`.

### Ошибки

Метод выбрасывает исключение BadMethodCallException, если INI-переменная phar.readonly включена, или если модуль bzip2 или zlib недоступен.

### Примеры

Пример #1 Пример распаковки файла в phar-архиве методом PharFileInfo::decompress()

    <?php

    try {
        $p = new Phar('/path/to/my.phar', 0, 'my.phar');

        $p['myfile.txt'] = 'hi';
        $file = $p['myfile.txt'];

        $file->compress(Phar::GZ);
        var_dump($file->isCompressed());

        $p['myfile.txt']->decompress();
        var_dump($file->isCompressed());
    } catch (Exception $e) {
        echo 'При попытке создать или модифицировать файл my.phar возникла ошибка: ', $e;
    }

    ?>

Результат выполнения приведённого примера:

    int(4096)
    bool(false)

### Смотрите также

- PharFileInfo::getCompressedSize() - Получить реальный занимаемый файлом размер на диске с учётом сжатия
- PharFileInfo::isCompressed() - Проверить, сжат ли файл
- PharFileInfo::compress() - Сжимает текущий файл методом zlib или bzip2
- Phar::canCompress() - Проверяет, поддерживает ли модуль phar сжатие с использованием zlib или bzip2
- Phar::isCompressed() - Возвращает Phar::GZ или PHAR::BZ2, если phar-архив сжат целиком (.tar.gz/tar.bz и так далее)
- Phar::compressFiles() - Сжимает все файлы в текущем Phar-архиве
- Phar::decompressFiles() - Распаковывает все файлы в текущем Phar-архиве
- Phar::compress() - Сжимает весь Phar-архив с помощью Gzip- или Bzip2-сжатия
- Phar::decompress() - Распаковывает весь Phar-архив
- Phar::getSupportedCompression() - Возвращает массив поддерживаемых алгоритмов сжатия

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open