(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::decompress — Décompresse l'archive tar complète
Description
public
Phar::decompress(?string
$extension
=
null
): ?Phar
Note:
Cette
méthode nécessite que la variable de configuration INI phar.readonly
soit définie à 0
pour fonctionner avec les objets Phar.
Sinon, une exception PharException sera lançée.
Pour les archives phar basées sur tar et sur phar, cette méthode décompresse l'archive complète.
Pour les archives phar bases sur Zip, cette méthode échoue et lève une exception.
L'extension zlib doit être active pour décompresser
une archive compressée grâce à gzip, et l'extension bzip2
doit être active pour décompresser une archive compressée grâce à bzip2.
Comme avec toutes les fonctionnalités qui modifient le coutenu d'un phar, la variable INI
phar.readonly doit être à off
pour fonctionner.
De plus, cette méthode change automatiquement l'extension de l'archive,
.phar
Par défaut pour les archives phar, ou .phar.tar
pour les archives phar basées sur tar.
Sinon, une extension de fichier peut aussi être spécifiée en utilisant le second
paramètre.
Liste de paramètres
-
extension
-
Pour décompresser, les extension de fichier par défaut
sont .phar
et .phar.tar
.
Utilisez ce paramètre pour spécifier une autre extension de fichier.
A noter que toutes les archives phar exécutables doivent contenir .phar
dans leur nom de fichier.
Valeurs de retour
Un objet Phar est retourné en cas de succès,
ou null
en cas d'échec.
Erreurs / Exceptions
Lève une exception BadMethodCallException si
la variable INI phar.readonly
est à on, si l'extension zlib
n'est pas disponible, ou si l'extension bzip2
n'est pas activée.
Historique
Exemples
Exemple #1 Un exemple avec phar::decompress()
<?php
$p = new Phar('/chemin/vers/mon.phar', 0, 'mon.phar.gz');
$p['monfichier.txt'] = 'salut';
$p['monfichier.txt'] = 'salut';
$p3 = $p2->decompress(); // crée /chemin/vers/mon.phar
?>
Voir aussi
- pharfileinfo::getCompressedSize() - Retourne la taille actuelle (avec compression) du fichier au sein de l'archive Phar
- pharfileinfo::isCompressed() - Retourne si l'entrée est compressée
- pharfileinfo::compress() - Compresse l'entrée Phar courante avec une des compressions zlib ou bzip2
- PharFileInfo::decompress() - Décompresse l'entrée Phar courante au sein du phar
- phardata::compress() - Compresse l'archive tar/zip complète en utilisant la compression Gzip ou Bzip2
- phar::canCompress() - Détermine si l'extension phar supporte une la compression en utilisant soit zip soit bzip2
- phar::isCompressed() - Retourne Phar::GZ ou PHAR::BZ2 si l'archive entière est compressée (.tar.gz/tar.bz, etc)
- phar::compress() - Compresse l'archive Phar complète en utilisant la compression Gzip ou Bzip2
- phar::getSupportedCompression() - Retourne un tableau des algorithmes de compression supportés
- phar::compressFiles() - Compresse tous les fichiers de l'archive Phar courante'
- phar::decompressFiles() - Décompresse tous les fichiers de l'archive Phar courante