PHP で出力するバッファをファイルに保存する方法

<?php
// バッファをファイルに保存するコールバック関数
function saveBuffer($buffer) {
    if ($fh = fopen('test.html', 'w')) {
        fwrite($fh, $buffer);
        fclose($fh);
    }
}
// バッファリング開始
ob_start("saveBuffer");

$a = 1 + 1;
echo '<html><body>1 + 1 =', $a, '</body></html>';

// 後処理 (全バッファの消去)
while (@ob_end_clean());
?>
ファイルを出力しました.