bzopen

(PHP 4 >= 4.3.3, PHP 5, PECL bz2:1.0)

bzopen — Открывает для работы файл, сжатый с использованием bzip2

Описание

resource bzopen ( string $filename , string $mode )

Открывает файл bzip2 (.bz2) для чтения или записи. filename путь к файлу. mode параметр аналогичный одноимённому параметру функции fopen() (`r' -- чтение, `w' -- запись, и т.д.).

При ошибке открытия функция возвращает FALSE, иначе она возвращает указатель на открытый файл.

Пример #1 Пример использования bzopen()

<?php
$bz 
bzopen("/tmp/foo.bz2""r");

$decompressed_file '';
while (!
feof($bz)) {
    
$decompressed_file .= bzread($bz4096);
}
bzclose($bz);

print( 
"The contents of /tmp/foo.bz2 are: " );
print( 
"\n<br>\n" );
print( 
$decompressed_file );
?>

См. также bzclose().

Коментарии

Warning!

the example show above is _not_ working in every case!
This example will continue reading until there is no more data:

<?PHP
      $bz
=bzopen('foo.bz2''r');
     
$data="";
      do {
       
$line=bzread($bz8092);
        if(
$line!==false)
         
$data.=$line;
      }
      while(
$line);
     
bzclose($bz);
?>
2008-03-19 15:11:22
http://php5.kiev.ua/manual/ru/function.bzopen.html
Автор:
In some circumstances, you may want to send a bzip2 stream to the client.

To do this, you need only do:

<?php
ob_flush
();
$bz bzopen('php://stdout''w');
bzwrite($bz'some input here');
bzclose($bz);
?>

However, please note, because you are using STDOUT, you need to ob_flush() before actually writing to the stream. Otherwise, you might be sending data before the headers, which will cause errors on both server and client ends, in most cases.

You might be able to use php://output rather than php://stdout, however in my tests (with Linux), php://output doesn't actually work - at all.
2008-12-30 19:44:58
http://php5.kiev.ua/manual/ru/function.bzopen.html

    Поддержать сайт на родительском проекте КГБ