43

mPDFを使用しているページがあります。実行するとブラウザにPDFが表示され、ここからPDFとして問題なく保存することもできます。私がしたいのは、ページが実行され、ページがサーバーにPDFとして保存されるPDFを生成するときです。

現在のコードは次のとおりです。

<?php
include $_SERVER['DOCUMENT_ROOT'].'/include/seo-check/lib/WSAclient.php';
include $_SERVER['DOCUMENT_ROOT'].'/include/seo-check/lib/WSAParser.php';

$reportID= $_GET['reportid'];

$WSAclient = new WSAclient(WSA_USER_ID,WSA_API_KEY);

$result=$WSAclient->viewReport($reportID,WSA_SUBSCRIPTION_ID,'xml','EN');

unset($WSAclient);

ob_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PDF Report</title>
<!--Add your CSS here-->
</head>
<body>    
<?php  
echo WSAParser::viewReportResponse($result);
?>
</body>
</html>
<?php
$HTMLoutput = ob_get_contents();
ob_end_clean();


//Convert HTML 2 PDF by using MPDF PHP library
include $_SERVER['DOCUMENT_ROOT'].'/include/seo-check/lib/MPDF/mpdf.php';
$mpdf=new mPDF(); 

$mpdf->WriteHTML($HTMLoutput);
$mpdf->Output();
?>

私が言ったように、これはPDFを正常に出力しますが、誰かがPDFとして保存する方法を教えてもらえますか?

4

4 に答える 4

109

mPDFのドキュメントには、の最初の引数Output()はファイルパス、2番目の引数は保存モードであると記載されています。これをに設定する必要があります'F'

$mpdf->Output('filename.pdf','F');
于 2012-09-24T23:24:07.407 に答える
26

これを試して:

$mpdf->Output('my_filename.pdf','D'); 

なぜなら:

D-ダウンロード
Fを意味します-ファイルを意味します-保存のみ

于 2013-11-29T14:03:06.983 に答える
25

これはこのように行うことができます。それは私にとってはうまくいきました。また、ディレクトリのアクセス許可が設定されていない場合は、777または775に設定します。

ob_clean();
$mpdf->Output('directory_name/pdf_file_name.pdf', 'F');
于 2015-06-02T09:18:04.487 に答える
1

このリンク を通過すると、の最初の引数Output()はファイルパス、2番目の引数は保存モードになります。これをに設定する必要があります'F'

 $upload_dir = public_path(); 
             $filename = $upload_dir.'/testing7.pdf'; 
              $mpdf = new \Mpdf\Mpdf();
              //$test = $mpdf->Image($pro_image, 0, 0, 50, 50);

              $html ='<h1> Project Heading </h1>';
              $mail = ' <p> Project Heading </p> ';
              
              $mpdf->autoScriptToLang = true;
              $mpdf->autoLangToFont = true;
              $mpdf->WriteHTML($mail);

              $mpdf->Output($filename,'F'); 
              $mpdf->debug = true;

例 :

 $mpdf->Output($filename,'F');

例2

$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML('Hello World');

// Saves file on the server as 'filename.pdf'
$mpdf->Output('filename.pdf', \Mpdf\Output\Destination::FILE);
于 2020-10-14T12:20:03.947 に答える