Судя по Пример # 1 на странице справочника bzwrite
(цитата) :
<?php
$str = "uncompressed data";
$bz = bzopen("/tmp/foo.bz2", "w");
bzwrite($bz, $str, strlen($str));
bzclose($bz);
?>
Я бы сказал, что нет необходимости самостоятельно сжимать данные с помощью bzcompress
перед использованием bzwrite
.
Кроме того, выполнение этой части кода создаст файл с содержимым, похожим на это:
$ cat /tmp/foo.bz2
BZh91AY&SY7�w�@.� 1�&2��� q�o
|]��B@���`
Не похоже на "uncompressed data
" - и похоже на некоторые сжатые bzip2 данные; -)