2009-10-07 62 views
0

我正在將文件的內容輸出到另一個文件,但內容只是未放入第二個文件。它創建文件,但不會將輸出放到文件中,它將在屏幕上顯示輸出。無法使用file_put_contents將內容添加到文件

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)時寫入文件; 是不是?

回答

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

@Roland - 這應該被標記爲正確的答案。 – karim79 2009-10-07 15:42:23

+0

@羅蘭 - 謝謝@安東尼 - 投了票。 – karim79 2009-10-07 15:49:58

+0

修好了,thx Antonio – Roland 2009-10-07 15:50:07

0

您可能沒有寫入該文件的權限,或文件夾,如果你正在創建文件

+0

-rwxrwxrwx 1 WWW的數據WWW的數據0 2009-10-07 17:20 contact.php drwxr-XR-X 2 WWW的數據WWW的數據2009年4096 -10-07 17:19 8c492a19cfbb713f89d0946482c5ee42 – Roland 2009-10-07 15:27:11