1

DOMPDFを使用して PDF ファイルを返すメソッドがあります。すべての適切なヘッダーを送信します。オンザフライで生成されます (サーバーのどこにも保存されません)。

この PDF を送信メールに添付する必要があります。私はコハナ3でこれをやった

        $routeUrl = Route::get('secure_view_pdf')->uri(array('id' => $id));

        $response = Request::factory($routeUrl)->execute();


        $tempFile = DOCROOT . 'tmp/pdf-' . $id . '.pdf';

        file_put_contents($tempFile, $response); 


        $swift = email::connect();
        $message = Swift_Message::newInstance();


        $message->setSubject('My Subject')
              ->setFrom(array('info@example.com.au' => 'Example'))
              ->setTo(array($clientEmail => html::chars($clientName)))
              ->setBody($body) 
              ->addPart($body, 'text/html') 
              ->attach(Swift_Attachment::fromPath($tempFile));

        $swift->send($message);

要求しているルートは、単にヘッダーを送信してダウンロードし、PDF をストリーミングして、エンド ユーザーがダウンロードできるようにします。また、 Swift Mailerライブラリも使用します。

このリクエストをブラウザで実行する場合を除いて、ファイルをダウンロードするように求められます。$response出力を取得し、ダウンロード ヘッダーを無視したいContent-Disposition: attachment; filename="file #1.pdf"

このリクエストをそのまま受け取り、上記のようにファイルに保存することは可能ですか。

または、PDF の自動生成をファイルに変更し、Swift でそのファイルを指定する必要がありますか?

どうもありがとう

4

1 に答える 1

1
  $response = Request::factory($routeUrl)->execute()->response;
于 2010-04-28T15:05:43.043 に答える