从php“结果”页面生成doc文件?

时间:2011-07-27 14:49:16

标签: php html file generated

我有一个PHP生成的页面,其中包含提交表单的结果,我想要做的是将其保存为服务器上的.doc文件。 经过一些谷歌搜索,我遇到了这个代码,我改编了: -

$myFile = "./dump/".$companyName."/testFile.doc";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "Bobby Bopper\n";
fwrite($fh, $stringData);
$stringData = "Tracy Tanner\n";
fwrite($fh, $stringData);
fclose($fh);

但问题是我必须重新创建结果才能手动将它们写入文件,而且效率似乎不高。

所以我继续谷歌并发现PHP手册让我坦白地说,但我终于找到了这个: -

ob_start();
// code to generate page.
$out = ob_get_contents();
ob_end_clean();
// or write it to a file.
file_put_contents("./dump/".$companyName."/testFile.doc",$out);

哪个会创建文件,但不会写任何内容。然而,这似乎是我想做的事情(基于PHP手册),即使我不能让它工作!

有什么建议吗?如果我能找出一个不错的搜索词,我不介意谷歌搜索:)

1 个答案:

答案 0 :(得分:1)

这可以为你做到:

$cache = 'path/to/your/file';

ob_start();

// your content goes here...
echo "hello !"; // would put hello into your file

$page = ob_get_contents(); 

ob_end_clean(); 

$fd = fopen("$cache", "w"); 

    if ($fd) {

    fwrite($fd,$page); 

    fclose($fd);

}

这也是缓存动态页面的好方法。希望它有所帮助。