我正在使用 DOMPDF 从 HTML 生成 PDF。 我已经从 github(编码分支)复制了所有需要的文件。但它说类 DOMPDF 不是错误,如下所示。
gitbub 中 dompdf_config.inc.php 的链接:https://github.com/dompdf/dompdf/tree/encoding
这是我的代码:
require_once("APIs/dompdf-encoding/dompdf_config.inc.php");
$cart_body='<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>New Order Placed</title></head><body><p>Test Printing...</p></body></html>';
$dompdf = new DOMPDF();
$dompdf->load_html($cart_body);//body -> html content which needs to be converted as pdf..
$dompdf->render();
$dompdf->stream("sample.pdf"); //To popup pdf as download
实际输出是:
Fatal error: Class 'DOMPDF' not found in /home/web/www/test_dompdf.php on line 30
第 30 行是 $dompdf = new DOMPDF();
注意:其他主分支工作正常。我需要这个编码分支,因为它解决了与编码字体相关的问题。
最佳答案
我已经测试了您的代码,它对我来说工作正常 - 正在浏览器中下载 sample.pdf 文件。我已经从 https://github.com/dompdf/dompdf/releases/tag/v0.6.1 下载了库url(不仅是编码分支(
可能您还没有将整个项目移动到选定的目录,或者您还没有下载整个库。我将整个下载的目录内容移动到 APIs/dompdf-encoding
目录,这里有文件 dompdf_config.inc.php
和目录 lib
,include
和 www
。
编辑
当您编辑时,您只想使用编码分支,您要做的就是在文件开头添加以下代码:
use Dompdf\Adapter\CPDF;
use Dompdf\Dompdf;
use Dompdf\Exception;
EDIT2
整个工作代码:
<?php
use Dompdf\Adapter\CPDF;
use Dompdf\Dompdf;
use Dompdf\Exception;
require_once("APIs/dompdf-encoding/dompdf_config.inc.php");
$cart_body='<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>New Order Placed</title></head><body><p>Test Printing...</p></body></html>';
$dompdf = new Dompdf();
$dompdf->load_html($cart_body);//body -> html content which needs to be converted as pdf..
$dompdf->render();
$dompdf->stream("sample.pdf"); //To popup pdf as download
我还将 DOMPDF
更改为 Dompdf
以防万一(在 Windows 中两者都可以工作)
关于PHP fatal error : Class 'DOMPDF' not found on line 30,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24497216/