无法使用file_put_contents将内容添加到文件

时间:2009-10-07 15:22:38

标签: php

我正在将文件的内容输出到另一个文件,但内容没有被放入第二个文件中。它创建文件但不将输出放到文件中,它在屏幕上显示输出。

require_once 'templates/'.$layout.'/contact.php';
ob_start();
$content = ob_get_clean();

file_put_contents($dir.'/contact.php',$content);
chmod($dir.'/contact.php',0777);

有趣的是,当我执行此file_put_contents($ dir。'/ contact.php','dsf');它在执行file_put_contents($ dir。'/ contact.php',$ content)时写入文件; 不是吗?

2 个答案:

答案 0 :(得分:3)

我不明白......你包含一个文件,然后调用ob_start(),然后调用ob_get_clean()。

假设在ob_get_clean ??

你应该:

ob_start(); //<--- Start the buffer

require_once 'templates/'.$layout.'/contact.php';

$content = ob_get_clean();

file_put_contents($dir.'/contact.php',$content);
chmod($dir.'/contact.php',0777);

答案 1 :(得分:0)

如果您要创建该文件,则可能无权写入该文件或文件夹