Phar::uncompressAllFiles
(PECL phar < 2.0.0)
Phar::uncompressAllFiles — Descomprimir todos los ficheros del archivo Phar actual
Descripción
Nota:
Este método ha sido eliminado de la extensión Phar a partir de la versión 2.0.0. Implementaciones alternativas están disponibles utilizando Phar::compress(), Phar::decompress(), Phar::compressFiles() y Phar::decompressFiles().
Nota:
Este método requiere que la opción de php.ini phar.readonly esté establecida a 0 para que trabaje con objetos Phar. De otra manera, se lanzará una excepción de tipo PharException.
Este método descomprime todos los ficheros del archivo Phar. Si cualquier ficheros ya está comprimido con la compresión gzip, la extensión zlib debe estar habilitada para poder descomprimirlo, y cualquier fichero comprimido con la compresión bzip2 queriere de la extensión bzip2 para descomprimirlo. Al igual que con toda la funcionalidad que modifica el contenido de un Phar, la variable INI phar.readonly debe estar desactivada para poder realizar esto.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Errores/Excepciones
Lanza una excepción de tipo BadMethodCallException si la variable INI phar.readonly está activada, la extensión bzip2 no está habilitada y cualquier fichero está comprimido con la compresión bzip2, o si cualquer fichero está comprimido con la compresión gzip y la extensión zlib no está habilitada.
Ejemplos
Ejemplo #1 Un ejemplo de Phar::uncompressAllFiles()
<?php
try {
$p = new Phar('/ruta/a/mi.phar', 0, 'mi.phar');
$p['mifichero.txt'] = 'hola';
$p['mifichero2.txt'] = 'hola';
$p->compressAllFilesGZ();
foreach ($p as $fichero) {
var_dump($fichero->getFileName());
var_dump($fichero->isCompressed());
var_dump($fichero->isCompressedBZIP2());
var_dump($fichero->isCompressedGZ());
}
$p->uncompressAllFiles();
foreach ($p as $fichero) {
var_dump($fichero->getFileName());
var_dump($fichero->isCompressed());
var_dump($fichero->isCompressedBZIP2());
var_dump($fichero->isCompressedGZ());
}
} catch (Exception $e) {
echo 'Las operaciones de escritura sobre mi.phar fallaron: ', $e;
}
?>
El resultado del ejemplo sería:
string(13) "mifichero.txt" bool(true) bool(false) bool(true) string(14) "mifichero2.txt" bool(true) bool(false) bool(true) string(13) "mifichero.txt" bool(false) bool(false) bool(false) string(14) "mifichero2.txt" bool(false) bool(false) bool(false)
Ver también
- PharFileInfo::getCompressedSize() - Devolver el tamaño real de un fichero (con compresión) dentro de un archivo Phar
- PharFileInfo::isCompressedBZIP2() - Devolver si la entrada está comprimida con bzip2
- PharFileInfo::isCompressed() - Devolver si la entrada está comprimida
- PharFileInfo::isCompressedGZ() - Devolver si la entrada está comprimida con gz
- PharFileInfo::setCompressedBZIP2() - Comprimir la entrada actual de un Phar dentro del phar usando la compresión Bzip2
- PharFileInfo::setUncompressed() - Descomprimir la entrada actual del Phar dentro del phar, si está comprimida
- PharFileInfo::setCompressedGZ() - Comprimir la entrada actual de un Phar dentro del phar usando la compresión gz
- Phar::canCompress() - Devuelve si la extensión phar soporta la compresión usando zlib o bzip2
- Phar::isCompressed() - Devuelve Phar::GZ oPHAR::BZ2 si el archivo phar entero está comprimido (.tar.gz/tar.bz, etc.)
- Phar::compressAllFilesBZIP2() - Comprimir todos los ficheros del archivo Phar actual usando la compresión Bzip2
- Phar::compressAllFilesGZ() - Comprimir todos los ficheros del archivo Phar actual usando la compresión Gzip
- Phar::getSupportedCompression() - Devolver un array de los algoritmos de compresión soportados