あるディレクトリを tar cvzf で圧縮して
ブラウザからダウンロードできるようにしたいと思います。

PHPで作っているのですが、
----------
ヘッダー出力
system("cat hoge.txt");
----------
とした場合、正常に hoge.txt がダウンロードできます。
system()はコマンド実行用関数です。

しかし、
----------
ヘッダー出力
system("tar cvzf - hoge/");
----------
としても正常に hoge/ を圧縮したものをダウンロードできません。
実際ダウンロードできたものは 通常の半分程度の容量になってしまい、
かつ解凍もできませんでした。

ttp://www.linux24.com/linux/allascii/linuxmag/2001/06/09/626472-007.html
上記ページを参考にしたのですが、
何か間違い等ありますでしょうか?

どなたかご助言をお願いします。