<?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;
}
?>
Bzip2 kompresné funkcie
Úvod
bzip2 funkcie sa používajú na transparentné čítanie a zápis kompresovaných súborov bzip2 (.bz2).
Požiadavky
Tento modul používa funkcie knižnice » bzip2 napísanú Julianom Sewardom. Tento modul vyžaduje bzip2/libbzip2 verziu >= 1.0.x.
Inštalácia
Podpora Bzip2 nie je v PHP nastavená ako východzia. Pri kompilovaní PHP budete musieť použiť kofiguračnú voľbu --with-bz2[=DIR], aby ste tak povolili podporu bzip2.
Runtime Konfigurácia
Toto rozšírenie nemá žiadne konfiguračné direktívy definované v php.ini.
Typy zdrojov
Toto rozšírenie definuje jeden zdrojový typ: pointer súboru identifikujúci súbor bz2, na ktorom sa má pracovať.
Preddefinované Konštanty
Toto rozšírenie nemá definované žiadne konštanty.
Príklady
Tento príklad otvára dočasný súbor a zapisuje do neho testovací reťazec, potom vypíše obsahu súboru.
Example#1 Malý bzip2 príklad
<?php
$filename = "/tmp/testfile.bz2";
$str = "Toto je testovaci retazec.\n";
// otvorit subor na zapis
$bz = bzopen($filename, "w");
// zapisat retazec do suboru
bzwrite($bz, $str);
// zatvorit subor
bzclose($bz);
// otvorit subor na citanie
$bz = bzopen($filename, "r");
// precitat 10 znakov
echo bzread($bz, 10);
// precitat cely obsah suboru (alebo dalsi 1024 znak) a zavriet ho.
echo bzread($bz);
bzclose($bz);
?>
Table of Contents
- bzclose — Zatvoriť súbor bzip2
- bzcompress — Skomprimovať reťazec na zakódované dáta bzip2
- bzdecompress — Dekomprimuje zakódované dáta bzip2
- bzerrno — Vracia číslo bzip2 chyby
- bzerror — Vracia číslo bzip2 chyby a chybový reťazec v poli
- bzerrstr — Vracia chybový reťazec bzip2
- bzflush — Nanútiť zápis všetkých dát zásobníka
- bzopen — Otvára komprimovaný súbor bzip2
- bzread — Binárne načítanie bizip2 súboru
- bzwrite — Binárny zápis do bzip2 súboru
Bzip2
20-May-2004 11:34
