Descomprime todos los ficheros del archivo Phar actual

# Phar::decompressFiles

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

Phar::decompressFiles — Descomprime todos los ficheros del archivo Phar actual

### Descripción

public function Phar::decompressFiles(): true

> Nota: Este método requiere que la variable de configuración INI `phar.readonly` esté definida a `0` para funcionar con los objetos Phar. De lo contrario, se lanzará una excepción PharException.

Para los archivos phar basados en tar, este método lanza una excepción BadMethodCallException, ya que la compresión individual de los ficheros dentro de un archivo tar no es soportada por el formato de archivo. Utilice Phar::compress() para comprimir en un archivo phar basado en tar en su totalidad.

Para los archivos phar basados en Zip o en phar, este método descomprime todos los ficheros del archivo Phar. Las extensiones zlib o bzip2 deben estar activadas para aprovechar esta funcionalidad si alguno de los ficheros está comprimido utilizando la compresión bzip2/zlib. Al igual que con todas las funcionalidades que modifican el contenido de un phar, la variable INI phar.readonly debe estar a off para que funcione.

### Parámetros

Esta función no contiene ningún parámetro.

### Valores devueltos

Retorna siempre `true`.

### Errores/Excepciones

Lanza una excepción BadMethodCallException si la variable INI phar.readonly está a on, si la extensión zlib no está disponible o si alguno de los ficheros está comprimido utilizando la compresión bzip2 y la extensión bzip2 no está activada.

### Ejemplos

Ejemplo #1 Un ejemplo con Phar::decompressFiles()

    <?php
    $p = new Phar('/ruta/hacia/mon.phar', 0, 'mon.phar');
    $p['monfichier.txt'] = 'hola';
    $p['monfichier2.txt'] = 'hola';
    $p->compressFiles(Phar::GZ);
    foreach ($p as $file) {
        var_dump($file->getFileName());
        var_dump($file->isCompressed());
        var_dump($file->isCompressed(Phar::BZ2));
        var_dump($file->isCompressed(Phar::GZ));
    }
    $p->decompressFiles();
    foreach ($p as $file) {
        var_dump($file->getFileName());
        var_dump($file->isCompressed());
        var_dump($file->isCompressed(Phar::BZ2));
        var_dump($file->isCompressed(Phar::GZ));
    }
    ?>

El ejemplo anterior mostrará:

    string(10) "monfichier.txt"
    int(4096)
    bool(false)
    bool(true)
    string(11) "monfichier2.txt"
    int(4096)
    bool(false)
    bool(true)
    string(10) "monfichier.txt"
    bool(false)
    bool(false)
    bool(false)
    string(11) "monfichier2.txt"
    bool(false)
    bool(false)
    bool(false)

### Ver también

- PharFileInfo::getCompressedSize() - Devuelve el tamaño actual (con compresión) del fichero dentro del archivo Phar
- PharFileInfo::isCompressed() - Indica si la entrada está comprimida
- PharFileInfo::compress() - Comprime la entrada Phar actual con una de las compresiones zlib o bzip2
- PharFileInfo::decompress() - Descomprime la entrada Phar actual dentro del phar
- Phar::canCompress() - Determina si la extensión phar soporta la compresión utilizando zip o bzip2
- Phar::isCompressed() - Devuelve Phar::GZ o PHAR::BZ2 si el archivo completo está comprimido (.tar.gz/tar.bz, etc)
- Phar::compressFiles() - Comprime todos los ficheros del archivo Phar actual
- Phar::getSupportedCompression() - Devuelve un array de los algoritmos de compresión soportados
- Phar::compress() - Comprime el archivo Phar completo utilizando la compresión Gzip o Bzip2
- Phar::decompress() - Descomprime el archivo tar completo

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