尝试通过composer加载dompdf lib时,我遇到了一个非常恼人的错误。
致命错误:require_once():无法打开所需的错误 'dompdf_config.inc.php' (include_path中= ':在/ usr /本地/地窖/ php54 / 5.4.15 / LIB / PHP')
我可以告诉我的php配置肯定是加载了DOM扩展
这是测试代码
require 'vendor/autoload.php';
require_once("dompdf_config.inc.php");
$html =
'<html><body>'.
'<p>Hello World!</p>'.
'</body></html>';
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("hello_world.pdf");
我通过composer安装了dompdf:
我错过了什么?
答案 0 :(得分:2)
按照您放置required
声明的方式。
require_once("dompdf_config.inc.php");
文件dompdf_config.inc.php
必须与脚本位于同一路径中。
答案 1 :(得分:0)
如果您的PHP扩展程序和应用程序的默认位置不匹配,您可以使用(例如)设置包含路径:
define('INCLUDE_PATH', '/home/username/php');
@ini_set("include_path", INCLUDE_PATH);
如果您不知道PHP扩展的位置,请检查您的PHP配置或询问您的托管公司。
如果您不想更改此选项的值,请找出“dompdf_config.inc.php”所在的位置,并在执行时使用其完整路径的 require_once 强>
答案 2 :(得分:0)
在使用Composer使dompdf处于可用状态之前,您需要做一些事情。
在使用拉取请求中找到的Composer时,我遵循了安装说明:
https://github.com/adrianmacneil/dompdf/commit/8435a0c2f889698c9edc92ca461f78b27df45549
答案 3 :(得分:0)
我遇到了同样的问题,我通过删除 Composer 添加的 dompdf 并下载了一个包含 autoload.inc.php
的版本来修复它,并且在我的代码中添加了
require_once ('vendor/dompdf/dompdf/autoload.inc.php');
然后为了避免 Failed to load PDF document
错误,您必须像下面的代码一样添加 ob_end_clean();
ob_end_clean();
// Output the generated PDF to Browser
$dompdf->stream();