Comprime la entrada Phar actual con una de las compresiones zlib o bzip2

# PharFileInfo::compress

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

PharFileInfo::compress — Comprime la entrada Phar actual con una de las compresiones zlib o bzip2

### Descripción

public function PharFileInfo::compress(int `$compression`): true

Este método comprime el fichero dentro del archivo Phar utilizando una de las compresiones bzip2 o zlib. Las extensiones bzip2 o zlib deben estar activadas para aprovechar esta funcionalidad. Además, si el fichero ya está comprimido, la extensión adecuada debe estar activada para descomprimirlo. Al igual que con todas las funcionalidades que modifican el contenido de un phar, la variable INI phar.readonly debe estar a off para tener éxito si el fichero está dentro de un archivo Phar. Los ficheros dentro de archivos PharData no tienen esta restricción.

### Parámetros

`compression`

  La compresión debe ser `Phar::GZ` o `Phar::BZ2`.

### Valores devueltos

Retorna siempre `true`.

### Errores/Excepciones

Levanta una excepción BadMethodCallException si la variable INI phar.readonly está a on, o si la extensión bzip2/zlib no está disponible.

### Ejemplos

Ejemplo #1 Un ejemplo con PharFileInfo::compress()

    <?php
    try {
        $p = new Phar('/ruta/hacia/mifichero.phar', 0, 'mifichero.phar');
        $p['mifichero.txt'] = 'hola';
        $file = $p['mifichero.txt'];
        var_dump($file->isCompressed(Phar::BZ2));
        $p['mifichero.txt']->compress(Phar::BZ2);
        var_dump($file->isCompressed(Phar::BZ2));
    } catch (Exception $e) {
        echo 'No puede crear/modificar mifichero.phar : ', $e;
    }
    ?>

El ejemplo anterior mostrará:

    bool(false)
    bool(true)

### 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::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::decompressFiles() - Descomprime todos los ficheros del archivo Phar actual
- Phar::compress() - Comprime el archivo Phar completo utilizando la compresión Gzip o Bzip2
- Phar::decompress() - Descomprime el archivo tar completo
- Phar::getSupportedCompression() - Devuelve un array de los algoritmos de compresión soportados

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