PharFileInfo::compress

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

PharFileInfo::compressCompresse l'entrée Phar courante avec une des compressions zlib ou bzip2

Description

public bool PharFileInfo::compress ( int $compression )

Cette méthode compresse le fichier au sein de l'archive Phar en utilisant l'une des compressions bzip2 ou zlib. Les extensions bzip2 ou zlib doivent être activées pour tirer parti de cette fonctionnalité. De plus, si le fichier est déjà compressé, l'extension adéquate doit être activée pour le décompresser. Comme avec toutes les fonctionnalités qui modifient le contenu d'un phar, la variable INI phar.readonly doit être à off pour réussir si le fichier est au sein d'une archive Phar. Les fichiers au sein d'archives PharData n'ont pas cette restriction.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Erreurs / Exceptions

Soulève une exception BadMethodCallException si la variable INI phar.readonly est à on, ou si l'extension bzip2/zlib n'est pas disponible.

Exemples

Exemple #1 Un exemple avec PharFileInfo::compress()

<?php
try {
	$p = new Phar('/chemin/vers/mon.phar', 0, 'mon.phar');
	$p['monfichier.txt'] = 'salut';
	$file = $p['monfichier.txt'];
	var_dump($file->isCompressed(Phar::BZ2));
	$p['monfichier.txt']->compress(Phar::BZ2);
	var_dump($file->isCompressed(Phar::BZ2));
} catch (Exception $e) {
	echo 'Ne peut pas créer/modifier mon.phar : ', $e;
}
?>

L'exemple ci-dessus va afficher :

bool(false)
bool(true)

Voir aussi

LoadingChargement en cours