Phar::decompress
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::decompress — Descompacta todo o arquivo Phar
Descrição
Nota:
Este
método requer que a configuração phar.readonly
do php.ini seja
definida como 0
para funcionar com objetos Phar.
Caso contrário, uma exceção PharException será lançada.
Para arquivos phar baseados em tar e phar, esse método descompacta o arquivo inteiro.
Para arquivos phar baseados em Zip, este método falha com uma exceção.
A extensão zlib deve ser habilitada para descompactar
um arquivo compactado com compactação gzip, e a
extensão bzip2 deve ser
habilitada para descompactar um arquivo compactado com compactação bzip2.
Como acontece com todas as funcionalidades que modificam o conteúdo de um phar, a
variável INI phar.readonly deve estar desativada
para ter sucesso.
Além disso, este método altera automaticamente a extensão do arquivo,
.phar
por padrão para arquivos phar, ou .phar.tar
para arquivos phar baseados em tar.
Alternativamente, uma extensão de arquivo pode ser especificada com o segundo
parâmetro.
Parâmetros
extension
-
Para descompactação, as extensões de arquivo padrão
são .phar
e .phar.tar
.
Use este parâmetro para especificar outra extensão de arquivo. Esteja ciente
de que todos os arquivos executáveis phar devem conter .phar
em seus nomes.
Valor Retornado
Um objeto Phar é retornado em caso de sucesso e null
em caso de falha.
Exemplos
Exemplo #1 Um exemplo de Phar::decompress()
<?php
$p = new Phar('/caminho/para/meu.phar', 0, 'meu.phar.gz');
$p['meuarquivo.txt'] = 'olá';
$p['meuarquivo2.txt'] = 'olá';
$p3 = $p2->decompress(); // cria /caminho/para/meu.phar
?>