2011-01-10 109 views
3

非常簡單的問題,我相信。如何將整個頁面打印到變量中,然後使用我需要的地方。php打印整個頁面

舉例來說,如果代碼是:

<?php 

$arr = array('hello','mate','world'); 
foreach ($arr as $a) {print "<p>".$a."</p>"; } 

?> 

現在,如果我們去到該頁面中,我們可以看到一個陣列輸出,但我寧願整個頁面打印成變量,然後生成靜態頁面那個例子。

也許file_get_content or <<<EOT,但頁面會變得更復雜,所以不知道什麼是最好的選擇。

回答

8

不知道你的確切需求,但:

ob_start(); 
require('/path/to/templates/foo.php'); 
$template = ob_get_contents(); 
ob_get_clean(); 
+0

工程就像一個魅力! – devjs11 2011-01-10 12:10:36

1
ob_start(); 

// your code 

$var = ob_get_clean(); 

print $var; 
1

你爲什麼不使用smarty

把所有的HTML模板,並插入PHP代碼或變量進去。最後,使用$x=$smarty->fetch('template_name');你把所有的頁面放在$ x變量中...

+1

謝謝,我會考慮,但現在只需要簡單的PHP代碼。 – devjs11 2011-01-10 12:09:51