2013-04-25 72 views
0

我有我需要進一步處理的模板文件,因此想使用include不使用file_get_contents將它分配給字符串變量。原因是因爲最終的輸出是通過ob緩衝的,並且包含需要執行的php。如果我使用file_get_contents它不會執行。問題是如果我使用$ output = include'file.php',它將打印輸出而不分配。指定一個包含到字符串變量PHP

+0

哪裏輸出緩衝 - 包含腳本或主腳本? – 2013-04-25 02:53:25

+0

添加另一層輸出緩衝,並使用'ob_get_clean()' – mario 2013-04-25 02:54:01

+0

主腳本調用一個類來設置頁面並處理模板。在主頁面調用這個類,處理輸出,並使用ob_start()// $ template = ob_get_contents(); // ob_clean(); // $ registry-> getObject('template') - > parseOutput(); // $ template = $ registry-> getObject('template') - > getPage() - > getContentToPrint(); // $ template = str_replace(array(「\ r \ n」,「\ n」,「\ r」),'',$ template); // echo $ template; // ob_end_flush(); – RobNHood 2013-04-25 02:56:31

回答

2

試試這個:

ob_start(); 

include 'file.php'; 

$output = ob_get_clean(); 
+0

這是我在決定在課堂上進行處理之前使用的方法。我決定上課的原因是爲了更好地組織,處理和存儲模板。但是我不知道使用URL而不是file_get_contents的路徑將允許php執行。謝謝你的提示。 – RobNHood 2013-04-25 03:15:55

相關問題