VII. 圧縮関数
このモジュールは、Jean-loup Gailly および Mark Adler による
透過的に gzip (.gz) で圧縮されたファイルを読み書きするための
zlib の関数を使用します。
このモジュールを使用するには、zlib バージョン 1.0.9 以上を
使用する必要があります。
このモジュールは、gzip で圧縮されたファイルで動作する版の多くの
filesystem 関数を含んでいます。
(非圧縮のファイルも使用可能ですが、ソケットは使用できません)
テンポラリファイルをオープンし、テスト用文字列を書きこみ、
続いて、このファイルの内容を2回出力します。
例 1. 簡単な Zlib の例 1
2 <?php
3 $filename = tempnam('/tmp', 'zlibtest').'.gz';
4 print "<html>\n<head></head>\n<body>\n<pre>\n";
5 $s = "Only a test, test, test, test, test, test, test, test!\n";
6 // 最大限の圧縮を指定して書きこみ用にファイルをオープン
7 $zp = gzopen($filename, "w9");
8 // 文字列をファイルに書きこむ
9 gzwrite($zp, $s);
10 // ファイルを閉じる
11 gzclose($zp);
12 // 読みこみ用にファイルをオープン
13 $zp = gzopen($filename, "r");
14 // 3文字読みこむ
15 print gzread($zp, 3);
16 // ファイルの終端まで読み、閉じる
17 gzpassthru($zp);
18 print "\n";
19 // ファイルをオープンし、内容を出力する (2回目)。
20 if (readgzfile($filename) != strlen($s)) {
21 echo "Error with zlib functions!";
22 }
23 unlink($filename);
24 print "<pre>\n</h1></body>\n</html>\n";
25 ?>
26 |
|