The PHP Online Conference 2021

Exemples

Cet exemple ouvre un fichier temporaire et y écrit une chaîne de test, puis, affiche le contenu de ce fichier, deux fois.

Exemple #1 Exemple avec Zlib

<?php

$filename 
tempnam('/tmp''zlibtest') . '.gz';
echo 
"<html>\n<head></head>\n<body>\n<pre>\n";
$s "Seulement un test, test, test, test, test, test, test, test!\n";

// Ouvre un fichier en écriture, avec une compression maximale
$zp gzopen($filename"w9");

// Ecrit une chaîne dans le fichier
gzwrite($zp$s);

// Ferme le fichier
gzclose($zp);

// Ouvre un fichier en lecture
$zp gzopen($filename"r");

// Lit 3 caractères
echo gzread($zp3);

// Lit tout le contenu et ferme le fichier
gzpassthru($zp);
gzclose($zp);

echo 
"\n";

// Ouvre un fichier et affiche le contenu (pour la deuxième fois).
if (readgzfile($filename) != strlen($s)) {
        echo 
"Erreur avec les fonctions zlib !";
}
unlink($filename);
echo 
"</pre>\n</body>\n</html>\n";

?>

Exemple #2 Fonctionnement avec l'API de compression et de décompression incrémentale depuis PHP 7.0.0

<?php
// Compression GZIP :
$deflateContext deflate_init(ZLIB_ENCODING_GZIP);
$compressed deflate_add($deflateContext"Data to compress"ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext", more data"ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext", and even more data!"ZLIB_FINISH);

// Décompression GZIP :
$inflateContext inflate_init(ZLIB_ENCODING_GZIP);
$uncompressed inflate_add($inflateContext$compressedZLIB_NO_FLUSH);
$uncompressed .= inflate_add($inflateContextNULLZLIB_FINISH);
echo 
$uncompressed;
?>

L'exemple ci-dessus va afficher :

Data to compress, more data, and even more data!
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top