PharData::decompressFiles

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

PharData::decompressFilesDescomprime todos los ficheros del archivo zip actual

Descripción

public PharData::decompressFiles(): true

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.

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.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Siempre devuelve true.

Errores/Excepciones

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.

Ejemplos

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 resultado del ejemplo sería:

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)

Ver también