我有一个php文件myfile.php
,基本上是很多html和一些php代码,例如:
<body>
Name: <?php echo $_GET['id'] ?>
<!-- and so on ... -->
</body>
我使用的是用PHP编写的开源HTML到PDF转换器,它需要输入要转换的html内容:
PDFConverter::convertHTMLToPDFFIle($html_input, $filename_output_pdf);
如何将从myfile.php?id=XX
生成的html输入$html_input
?
答案 0 :(得分:4)
您可以使用一点输出缓冲并包含它。
<?php
ob_start();
include "myfile.php";
$content = ob_get_clean();
// $content now contains the processed code of myfile
此时,文件内容已由PHP处理,因为包含在$content
变量中。您可以将其传递给convertHTMLToPDFFile()
方法。
PDFConverter::convertHTMLToPDFFile($content, $outFilename);
编辑:OP编辑的问题添加要求,包含的文件需要能够接受变量。
当包含/需要文件时,它会继承当前范围。这意味着它可以访问定义的任何变量,类定义,函数等。因此,确定共享哪些变量并在包含文件之前设置这些值。例如:
<body>
Name: <?php echo $id; ?>
<!-- and so on ... ->
</body>
然后......
<?php
ob_start();
$id = <whatever the value should be>;
include "myfile.php";
$content = ob_get_clean();
答案 1 :(得分:2)
如果您在主机上启用了fopen url包装器,则可以使用文件获取内容
$html = file_get_contents("http://mysite.com/somefile.php?var=1&var2=2");