dompdf和php(mysql数据)

dompdf和php(mysql数据),php,mysql,html,dompdf,Php,Mysql,Html,Dompdf,我想从mysql数据库中提取数据。 然后将该数据插入html文件,然后使用dompdf将其转换为pdf 该模板非常完美,在我运行call dompdf时显示良好 然而,只要我尝试插入php代码,模板仍然可以完美地显示,无论php代码是什么,都不会显示任何内容。如果我打开页面,它就会显示出来,所以我知道它是有效的 在选项文件中,我完成了以下操作: private $isPhpEnabled = true; 我要调用模板的php文件(LeaseBase.php): 我在日志文件中也找不到任何东

我想从mysql数据库中提取数据。 然后将该数据插入html文件,然后使用dompdf将其转换为pdf

该模板非常完美,在我运行call dompdf时显示良好

然而,只要我尝试插入php代码,模板仍然可以完美地显示,无论php代码是什么,都不会显示任何内容。如果我打开页面,它就会显示出来,所以我知道它是有效的

在选项文件中,我完成了以下操作:

private $isPhpEnabled = true;
我要调用模板的php文件(LeaseBase.php):


我在日志文件中也找不到任何东西

感谢您的帮助

然而,当我尝试插入php代码时,模板仍然显示 很好,不管php代码是什么,都不会显示任何内容

答案:它不显示任何内容,因为当执行php页面时,它会输出html(而不是php代码)。如果没有
echo
print
或任何从php脚本生成html代码的代码,那么页面实际上将是空白的


重要的是要记住,php是服务器端代码,只要您做出相应指示,它就可以生成html代码。

对于0.6.1之前的Dompdf版本,您可以加载php文档,并在呈现之前对php进行处理。从版本0.6.1开始,Dompdf不再在运行时解析PHP。这意味着如果您有一个基于PHP的文档,您必须将其预呈现为HTML,这在使用
file\u get\u contents()
时不会发生

您有两个选择:

第一:使用输出缓冲来捕获呈现的PHP

ob_start();
require "Leases/LeaseBase.php";
$leasefile = ob_get_contents();
ob_end_clean();
第二:通过web服务器获取PHP文件:

$leasefile = file_get_contents('http://example.com/Leases/Leasebase.php');
…但是,实际上,如果我将文件加载到变量中并将其馈送到dompdf,而不进行任何进一步的操作,我将使用dompdf来获取文件。这样,您就不太可能需要处理外部资源(图像、样式表)引用问题:

$dompdf->load_html_file('http://example.com/Leases/Leasebase.php');
$dompdf->load_html_file('http://example.com/Leases/Leasebase.php');