0

HTMLを生成し、バッファを使用してPHP文字列に追加するファイルがあります

<?php ob_start(); ?>

    <table>
     <tr>
      <td>Content</td>
     </tr>
    </table>

<?php     
    $contents = ob_get_contents();
    ob_flush();

    mail($to, $subject, $contents, $headers);
?>

PHPを使用して文字列の内容をサーバー上のpdfファイルとして保存する方法はありますか? FPDF を使用してみましたが、コンテンツがページの上部にあり、fpdf から出力エラーが発生するため機能しません。

どんな助けでも大歓迎

4

1 に答える 1

3

ob_end_clean()代わりに使用する必要がありますob_flush();

ob_flush();HTMLを印刷しますが、それは望ましくありません。FPDFはpdfを作成し、ヘッダーを操作する必要があるため(pdfになるため)。最初に何かをエコー/印刷すると、phpはデフォルトのヘッダーを自動的に設定します。それらが設定されると、ライブラリはそれらを変更できず、エラーが発生します。

ob の内容を var( $contents = ob_get_contents();) に入れたら、使用できますob_end_clean()。これにより、バッファの内容が破棄され、バッファリングが停止します。

于 2012-09-12T14:46:42.097 に答える