DOMPDF无法在html文件中输出值

时间:2017-11-18 07:58:42

标签: php dompdf

这可能是一个新手问题。我想从与固定模板合并的用户输入创建pdf。

固定模板的代码是

<body>
<div>
<?php echo $request['firstname'];?>
<?php echo $request['lastname'];?>
</div>
</body>

生成PDF的PHP文件包含

$request=array('firstname'=>$_POST['firstname'], 'lastname'=>$_POST['lastname']);

ob_start();
require_once ('pdf-template/invoice.php');
$template = ob_get_clean();

require_once ('dompdf/autoload.inc.php');
use Dompdf\Dompdf;

$dompdf = new Dompdf();
$dompdf->loadHtml('$template');

$dompdf->setPaper('A4', 'portrait');

$dompdf->render();

$dompdf->stream();

如果我回显$ template的输出,那么我可以看到

  

firstname lastname

但生成的PDF文件仅包含

  

$模板

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

您的代码没有按预期工作,因为您在字符串文字中使用单引号并且单引号不扩展变量 - 您只需获得一个由变量名称组成的字符串,前面带有&#39; $& #39 ;.相反,您可以使用:

$dompdf->loadHtml($template);

如果要将模板用作加载的html的一部分,则应使用双引号,例如:

$dompdf->loadHtml("Personal data: <br>$template");

双引号字符串中的变量被扩展。