我放置了'dompdf'@'/ system / libraries /',并在同一目录下创建了一个类文件'Dompdf.php',代码如下:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require_once("dompdf/autoload.inc.php");
use Dompdf\Dompdf;
use Dompdf\Options;
class CI_Dompdf extends Dompdf {
/**
* Set the template from the table config file if it exists
*
* @param array $config (default: array())
* @return void
*/
public function __construct($config = array())
{
log_message('info', 'Dompdf Class Initialized');
}
}
下面的是使用dompdf库的控制器函数的一部分:
public function pdf_create($html, $filename='', $stream=TRUE){
$this->load->library('Dompdf','dompdf');
$this->dompdf->load_html($html);
$this->dompdf->render();
if ($stream) {
$this->dompdf->stream($filename.".pdf");
} else {
return $this->dompdf->output();
}
}
但我收到以下错误:
PHP Fatal error: Call to a member function isHtml5ParserEnabled() on null in /home/mysite/public_html/ci/system/libraries/dompdf/src/Dompdf.php on line 492
我检查了'dompdf / src / Options.php'中是否存在该函数。
我不知道如何解决它。
我的开发环境:
感谢。
UPDATE 由于未调用 Dompdf 构造函数而发现错误,正确的代码如下:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require_once("dompdf/autoload.inc.php");
use Dompdf\Dompdf;
class CI_Dompdf extends Dompdf {
/**
*
* @param array $config (default: array())
* @return void
*/
public function __construct($config = array()) {
parent::__construct($config);
log_message('info', 'Dompdf Class Initialized');
}
}