(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::decompressFiles — Descomprime todos los ficheros del archivo zip actual
Nota:
Este método requiere que la variable de configuración INI
phar.readonly
esté definida a0
para funcionar con los objetos Phar. De lo contrario, se lanzará una excepción PharException.
Para los archivos basados en tar, este método levanta 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 PharData::compress() para comprimir un archivo completo basado en tar.
Para los archivos basados en Zip, este método descomprime todos los ficheros del archivo. Las extensiones zlib o bzip2 deben estar activadas para aprovechar esta funcionalidad si al menos uno de los ficheros está comprimido con bzip2/zlib.
Esta función no contiene ningún parámetro.
Retorna siempre true
.
Levanta una excepción BadMethodCallException si la extensión zlib no está disponible o si al menos uno de los ficheros está comprimido con bzip2 y la extensión bzip2 no está activada.
Ejemplo #1 Un ejemplo con PharData::decompressFiles()
<?php
$p = new PharData('/ruta/hacia/mion.zip');
$p['mifichero.txt'] = 'hola';
$p['mifichero2.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(14) "mifichero.txt" int(4096) bool(false) bool(true) string(15) "mifichero2.txt" int(4096) bool(false) bool(true) string(14) "mifichero.txt" bool(false) bool(false) bool(false) string(15) "mifichero2.txt" bool(false) bool(false) bool(false)