2013-04-25 187 views
10

在PHP中有一个本地函数或一组函数,它允许我将echo和打印php文件输出到文件中。打印php脚本输出到文件

例如,代码将生成需要放入.html文件的HTML DOM,然后显示为静态页面。

+0

http://us2.php.net/manual/en/function.fwrite.php – jman 2013-04-25 21:59:17

+2

我能想到使用[file_put_contents()]的(最简单的方法HTTP ://php.net/manual/en/function.file-put-contents.php) – Ibu 2013-04-25 22:00:39

+0

感谢您的帮助,但我认为这个问题被误解了。通过“php文件输出”,我的意思不是简单的变量或字符串,而是由varius类,对象,所需文件等构成的脚本输出,并作为最终结果创建完整的HTML DOM(带标签,内容等)我想要打印到文件而不是直接传递给浏览器。 – 2013-04-25 22:09:26

回答

20

最简单的方法是创建一个HTML数据字符串并使用file_put_contents()函数。

$htmlStr = '<div>Foobar</div>'; 
file_put_contents($fileName, $htmlStr); 

为了创建这个字符串,你要捕获所有输出的数据。对于那些你需要使用ob_startob_end_clean输出控制功能:

// Turn on output buffering 
ob_start(); 
echo "<div>"; 
echo "Foobar"; 
echo "</div>"; 

// Return the contents of the output buffer 
$htmlStr = ob_get_contents(); 
// Clean (erase) the output buffer and turn off output buffering 
ob_end_clean(); 
// Write final string to file 
file_put_contents($fileName, $htmlStr); 

参考 -

+1

认为这是一个。会试试看。 Thx – 2013-04-25 22:17:46

+0

谢谢,男人!今天花了很多时间试图将XLS文件转换成可以在命令行中工作的脚本。这就是我一直在寻找的解决方案! – 2014-06-09 23:14:43