0

FPDF ライブラリを使用していますが、PDF を作成しようとすると、次のエラーが発生します。

警告: ヘッダー情報を変更できません - ヘッダーは既に送信されています (output started at-----) FPDF エラー: 一部のデータは既に出力されているため、PDF ファイルを送信できません

//Send to standard output
            if(ob_get_length())
                $this->Error('Some data has already been output, can\'t send PDF file');
            if(php_sapi_name()!='cli')
            {
                //We send to a browser
                header('Content-Type: application/pdf');
                if(headers_sent())
                    $this->Error('Some data has already been output, can\'t send PDF file');
                header('Content-Length: '.strlen($this->buffer));
                header('Content-Disposition: inline; filename="'.$name.'"');
                header('Cache-Control: private, max-age=0, must-revalidate');
                header('Pragma: public');
                ini_set('zlib.output_compression','0');
            }
            echo $this->buffer;
4

1 に答える 1

1

ある時点で、何かが原因で php がクライアントにデータを送信します。

この理由が見当たらない場合 (つまり、データを明示的に送信していない場合<?php) は、ソース ファイル内の PHP コード ( ) の開始前に、不要なテキスト、スペース、改行などがないか探してください。

これで問題は解決するはずです。

注: wh1t3h4ck5で指摘されているように、エラーの原因が現在のファイルにない場合は、含まれているファイルも確認する必要がある場合があります。最近変更されたファイルを探します。

于 2013-04-13T13:01:38.110 に答える