downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

bzclose> <bcompiler_write_header
[edit] Last updated: Mon, 01 Nov 2010

view this page in

IX. Compression Bzip2

Introduction

Les fonctions bzip2 servent à lire et écrire dans les fichiers compressés avec la méthode bzip2 (.bz2).

Pré-requis

Ce module utilise les fonctions de la bibliothèque bzip2, de Julian Seward pour écrire et lire des fichier bzip2 (.bz2) de manière transparente. Ce module requiert un version de bzip2/libbzip2 >= 1.0.x.

Installation

Le support bzip2 par PHP n'est pas activé par défaut. Vous devez utiliser l'option de configuration --with-bz2[=DIR] lors de la compilation de PHP pour l'activer.

Configuration à l'exécution

Cette extension ne définit aucune directive de configuration.

Types de ressources

Cette extension définit un type de ressource : une ressource de fichier, identifiant un fichier compressé bzip2.

Constantes pré-définies

Cette extension ne définit aucune constante.

Exemples

Cet exemple ouvre un fichier temporaire, et écrit une ligne de test, puis il en affiche le contenu.

Exemple 1. Petit exemple avec bzip2

<?php
$filename
= "/tmp/fichier_de_test.bz2";
$str = "Ceci est une chaîne de test.\n";

// ouvre le fichier en écriture
$bz = bzopen($filename, "w");

// écrit une chaîne dans le fichier
bzwrite($bz, $str);

// ferme le fichier
bzclose($bz);

// ouvre le fichier en lecture
$bz = bzopen($filename, "r");

// lit 10 caractères
echo bzread($bz, 10);

// affiche tout le reste du fichier, puis le ferme
echo bzread($bz);

bzclose($bz);
?>

Table des matières
bzclose -- Ferme un fichier bzip2
bzcompress -- Compresse une chaîne avec bzip2
bzdecompress -- Décompresse une chaîne bzip2
bzerrno -- Retourne le code d'erreur bzip2
bzerror -- Retourne le numéro et le message d'erreur bzip2 dans un tableau
bzerrstr -- Retourne le message d'erreur bzip2
bzflush -- Force l'écriture de toutes les données compressées
bzopen -- Ouvre un fichier compressé avec bzip2
bzread -- Lecture binaire d'un fichier bzip2
bzwrite -- Ecriture binaire dans un fichier bzip2


add a note add a note User Contributed Notes Compression Bzip2
ec10 at gmx dot net 20-May-2004 11:34
<?php
/**
 * @return bool
 * @param string $in
 * @param string $out
 * @desc compressing the file with the bzip2-extension
*/
function bzip2 ($in, $out)
{
    if (!
file_exists ($in) || !is_readable ($in))
        return
false;
    if ((!
file_exists ($out) && !is_writeable (dirname ($out)) || (file_exists($out) && !is_writable($out)) ))
        return
false;
   
   
$in_file = fopen ($in, "rb");
   
$out_file = bzopen ($out, "wb");
   
    while (!
feof ($in_file)) {
       
$buffer = fgets ($in_file, 4096);
        
bzwrite ($out_file, $buffer, 4096);
    }

   
fclose ($in_file);
   
bzclose ($out_file);
   
    return
true;
}

/**
 * @return bool
 * @param string $in
 * @param string $out
 * @desc uncompressing the file with the bzip2-extension
*/
function bunzip2 ($in, $out)
{
    if (!
file_exists ($in) || !is_readable ($in))
        return
false;
    if ((!
file_exists ($out) && !is_writeable (dirname ($out)) || (file_exists($out) && !is_writable($out)) ))
        return
false;

   
$in_file = bzopen ($in, "rb");
   
$out_file = fopen ($out, "wb");

    while (
$buffer = bzread ($in_file, 4096)) {
       
fwrite ($out_file, $buffer, 4096);
    }
 
   
bzclose ($in_file);
   
fclose ($out_file);
   
    return
true;
}
?>

 
show source | credits | sitemap | contact | advertising | mirror sites