>(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::compress — Compresse l'archive tar/zip complète en utilisant la compression Gzip ou Bzip2
Description
public
PharData::compress(int
$compression, ?string
$extension =
null): ?PharData
Pour les archives zip, cette méthode échoue en levant une exception.
L'extension zlib doit être activée pour compresser avec gzip,
l'extension bzip2 doit être activée pour compresser avec bzip2.
De plus, cette méthode renomme automatiquement l'archive, en la suffixant par .gz,
.bz2 ou en enlevant l'extension si Phar::NONE est spécifié pour enlever
la compression. Sinon, une extension de fichier peut être spécifiée avec le second paramètre.
Liste de paramètres
-
compression
-
La compression doit être Phar::GZ ou
Phar::BZ2 pour appliquer une compression, ou Phar::NONE
pour l'enlever.
-
extension
-
Par défaut, l'extension est .tar.gz ou .tar.bz2
pour compresser un tar, et .tar pour décompresser.
Valeurs de retour
Un objet PharData est retourné en cas de succès, null en cas d'échec.
Erreurs / Exceptions
Soulève une exception BadMethodCallException 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 phardata::compress()
<?php
$p = new PharData('/chemin/vers/mon.tar');
$p['monfichier.txt'] = 'salut';
$p['monfichier2.txt'] = 'salut';
$p1 = $p->compress(Phar::GZ); // copies vers /path/to/my.tar.gz
$p2 = $p->compress(Phar::BZ2); // copies vers /path/to/my.tar.bz2
$p3 = $p2->compress(Phar::NONE); // exception : /path/to/my.tar existe déjà
?>
Voir aussi
- phar::compress() - Compresse l'archive Phar complète en utilisant la compression Gzip ou Bzip2