聪明的模板和dompdf

时间:2013-10-22 09:55:11

标签: php smarty dompdf

我正在使用智能模板生成一个动态页面,其中包含用户提交的表单数据和上传的图像。我可以按预期显示所有内容。我希望将其输出为PDF。该模板名为index.tpl,位于模板文件夹中。我无法弄清楚如何将这两者放在一起。任何帮助将不胜感激,谢谢。我尝试了以下,但不起作用。没有输出。

require_once("dompdf/dompdf_config.inc.php");
$html = $smarty->fetch('index.tpl');
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("pdf_file.pdf");

当我检查error_log时,我注意到“PHP致命错误:未找到类'DOMPDF'”行。但是,当我创建一个如下所示的简单文件时,我可以完美地工作(生成PDF)。

require_once("dompdf/dompdf_config.inc.php");
$html =
    '<html><body>'.
    '<p>Hello World!</p>'.
    '</body></html>';
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("pdf_file.pdf");

这里发生了什么?为什么不同?

1 个答案:

答案 0 :(得分:2)

我认为您的回答是http://www.smarty.net/docsv2/en/api.fetch.tpl

// capture the output
$output = $smarty->fetch('index.tpl');

$tmpfile = tempnam("/tmp", "dompdf_");
file_put_contents($tmpfile, $output);
...