我有一个CakePHP脚本,它打印一个包含大块条件内容的报告,如下所示:
<?php if(in_array('Medical', $filter) || in_array('All', $filter)){ ?>
<div class="title_col_cell" align="left">Medical</div>
<div class="title_col_cell1" align="right">Visits</div>
<div class="title_col_cell1" align="right">Unduplicated Clients</div>
<div class="title_col_cell1" align="right">Prescription Assistance</div>
<div class="title_col_cell1" align="right">Vaccinations</div>
<?php } ?>
当我创建此报告的打印视图时,dompdf似乎将条件内容呈现为空白。有没有办法让dompdf不渲染那些东西?我有太多可能的组合为每个组合制作单独的视图。我怎么能以不同的方式编码?
谢谢!
答案 0 :(得分:0)
如果您查看文档,屏幕上显示的任何内容都将获得dompdf生成的文档。如果你在html文档中看不到它 - 那么它将被隐藏。在将文档传递给标准浏览器中的dompdf之前查看您的文档,以查看其中的内容。
答案 1 :(得分:0)
DOMPDF pdf将仅为已发送给它的代码创建pdf。最好将整个代码放在一个字符串中,然后在发送到dompdf对象之前将其显示在屏幕上以检查是否存在所有必需的html。例如:
$str="<div class="title_col_cell" align="left">Medical</div>
<div class="title_col_cell1" align="right">Visits</div>
<div class="title_col_cell1" align="right">Unduplicated Clients</div>
<div class="title_col_cell1" align="right">Prescription Assistance</div>
<div class="title_col_cell1" align="right">Vaccinations</div>";
$dompdf = new DOMPDF();
$dompdf->load_html($str);
$dompdf->set_paper('letter', 'landscape');
$dompdf->render();
$dompdf->stream("dompdf_out.pdf", array("Attachment" => false));
exit(0);