【发布时间】:2019-12-20 22:44:04
【问题描述】:
在codeigniter中,
DOMPDF 显示空白屏幕..
没有错误(处于开发模式)..
html 生成正确..
但是pdf没有生成..那里只有空白屏幕
我的代码片段:
function pdf_create($html, $filename='', $stream=TRUE)
{
require_once("dompdf/dompdf_config.inc.php");
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_option('isHtml5ParserEnabled', true);
$dompdf->setPaper('A4', 'potrait');
$dompdf->render();
if ($stream) {
$dompdf->stream($filename.".pdf", array("Attachment" => 0));
} else {
return $dompdf->output();
}
}
function invoicepdf()
{
$orderId = base64_decode($this->uri->segment('3'));
$this->load->helper(array('dompdf', 'file'));
$query = "SELECT * FROM `ci_booking` WHERE id='".$orderId."'";
$this->data['order_details'] = $this->home->customQuery($query);
$html = $this->load->view('reports/printinvoice', $this->data, true);
//echo $html; die;
$this->pdf_create($html, 'Invoice -'.$orderId);
}
当我取消注释 invoicepdf() 函数的 echo 语句时.. 然后正确生成输出。但是当它传递给 pdf_create() 函数时,它显示空白屏幕,将 ini_reporting 设置为 1 后没有错误。
我附上了黑屏检查代码,为什么会这样显示?
【问题讨论】:
-
试试这些代码行:
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);也显示警告 -
我在 "require_once("dompdf/dompdf_config.inc.php");" 之后插入这些行声明虽然它没有显示任何警告..注意..错误
-
尝试返回输出
return pdf_create($html, 'Invoice -'.$orderId); -
虽然不工作
-
它看起来像您的主机将您重定向到一些“空白”页面...我怀疑您包含 dompdf 配置的方式是错误的...尝试类似
if (file_exists('dompdf/dompdf_config.inc.php')) require_once("dompdf/dompdf_config.inc.php"); else { echo 'dompdf config file missing'; die;}
标签: php css codeigniter dompdf