将html响应放入php变量中

时间:2013-07-10 04:49:26

标签: php html

我有一个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

2 个答案:

答案 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");