我正在尝试使用DOMPdf生成PDF,其中我需要伏特模板的HTML。 volt模板是动态生成的。因此,如何在控制器中获取volt模板html作为变量。
MyController操作:
@Transactional
public List<Message> receiveAllFromQueue(String destination) {
return jmsTemplate.execute(session -> {
try (final MessageConsumer consumer = session.createConsumer(session.createQueue(destination))) {
List<Message> messages = new ArrayList<>();
Message message;
while ((message = consumer.receiveNoWait()) != null) {
messages.add(message);
}
return messages;
}
}, true);
}
模板:
public function printEvaluationQuizResultAction() {
// I WANT TO GET HTML FROM a TEMPLATE in $html variable
//$html = $this->request->getPost('html');
// instantiate and use the dompdf class
$dompdf = new Dompdf();
$dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser
$dompdf->stream();
}
如果需要任何解释,我想添加更多详细信息。
谢谢
答案 0 :(得分:0)
首先,您应该在模板中使用volt。现在,您使用一次php一次电压,甚至在此示例中也可以在任何地方使用电压。
要从伏特获取html,请在例如控制器中使用
$view = $this->view;
$view->start();
$view->render('mail', 'exam');
$view->finish();
html = $view->getContent();