PHP Conference Nagoya 2025

Beispiele

Dieses Beispiel öffnet eine temporäre Datei und schreibt einen Teststring in die Datei, dann wird der Inhalt dieser Datei zweimal ausgegeben.

Beispiel #1 Ein kleines Beispiel zu Zlib

<?php

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

// Temporäre Datei zum Schreiben mit der maximalen Kompressionsstufe öffnen
$zp = gzopen($filename, "w9");

// String in die Datei schreiben
gzwrite($zp, $s);

// Datei schließen
gzclose($zp);

// Datei zum Lesen öffnen
$zp = gzopen($filename, "r");

// 3 Zeichen einlesen und ausgeben
echo gzread($zp, 3);

// Inhalt der Datei ausgeben und die Datei schließen
gzpassthru($zp);
gzclose($zp);

echo
"\n";

// Öffne die Datei und gib den Inhalt zum zweiten Mal aus
if (readgzfile($filename) != strlen($s)) {
echo
"Error with zlib functions!";
}
unlink($filename);
echo
"</pre>\n</body>\n</html>\n";

?>

Beispiel #2 Arbeiten mit den inkrementellen Kompriemierungs- und Dekomprimierungs-API

<?php
// führe GZIP-Komprimierung durch:
$deflateContext = deflate_init(ZLIB_ENCODING_GZIP);
$compressed = deflate_add($deflateContext, "Zu komprimierende Daten", ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext, ", weitere Daten", ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext, ", und noch mehr Daten!", ZLIB_FINISH);

// führe GZIP-Dekomprimierung durch:
$inflateContext = inflate_init(ZLIB_ENCODING_GZIP);
$uncompressed = inflate_add($inflateContext, $compressed, ZLIB_NO_FLUSH);
$uncompressed .= inflate_add($inflateContext, NULL, ZLIB_FINISH);
echo
$uncompressed;
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Zu komprimierende Daten, weitere Daten, und noch mehr Daten!
add a note

User Contributed Notes

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