Rechercher une fonction PHP

PharData::compressFiles

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

PharData::compressFilesCompresse tous les fichiers de l'archive tar/zip courante

Description

PharData::compressFiles ( int $compression ) : void

Pour les archives basées sur tar, cette méthode soulève une exception BadMethodCallException car la compression individuelle des fichiers d'une archive tar n'est pas supportée par ce format de fichiers. Utilisez PharData::compress() pour compresser une archive basée sur tar complète.

Pour les archives basées sur Zip, cette méthode compresse tous les fichiers de l'archive en utilisant la compression spécifiée. Les extensions zlib ou bzip2 doivent être activées pour tirer parti de cette fonctionnalité. De plus, si au moins un fichier est déjà compressé en utilisant la compression bzip2/zlib, l'extension adéquate être activée pour décompresser les fichiers avant de les re-compresser.

Retour à la première page de Manuel PHP  Table des matières Haut

Liste de paramètres

compression

La compression doit être Phar::GZ ou Phar::BZ2 pour appliquer une compression, ou Phar::NONE pour l'enlever.

Retour à la première page de Manuel PHP  Table des matières Haut

Valeurs de retour

Aucune valeur n'est retournée.

Retour à la première page de Manuel PHP  Table des matières Haut

Erreurs / Exceptions

Soulève une exception BadMethodCallException si la variable INI phar.readonly est à on, si l'extension zlib n'est pas disponible ou si au moins un fichier est compressé via bzip2 et que l'extension bzip2 n'est pas activée.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Un exemple avec PharData::compressFiles()

<?php
$p 
= new Phar('/chemin/vers/mon.phar'0'mon.phar');
$p['monfichier.txt'] = 'salut';
$p['monfichier2.txt'] = 'salut';
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->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));
}
?>

L'exemple ci-dessus va afficher :

string(14) "monfichier.txt"
bool(false)
bool(false)
bool(false)
string(15) "monfichier2.txt"
bool(false)
bool(false)
bool(false)
string(14) "monfichier.txt"
int(4096)
bool(false)
bool(true)
string(15) "monfichier2.txt"
int(4096)
bool(false)
bool(true)

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-phardata.compressfiles.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut