2014-04-11 215 views
0

我在我的CakePHP應用程序中編寫模塊以生成PDF中的收據。 PDF生成器將「內容」作爲參數並基於它生成PDF。所以,我創建了一個模板文件看起來像這樣:從外部文件運行PHP腳本

<table> 
     <thead> 
      <tr> 
       <th colspan="3"> 
        Purchase Summary - Receipt 
        <?php echo "PHP CONTENT ECHO"; ?> 
       </th> 
      </tr> 
     </thead> 
... 

我讀到這樣的內容:

$file = file_get_contents('receipt_template', true); 

我想通過這個內容的PDF生成器。當我打印內容時,沒有任何命令正在執行,因此<?php echo "PHP CONTENT ECHO"; ?>行不會被執行。 我在想模板文件,加載內容並替換值,然後將整個事情傳遞給PDF生成器來創建PDF文檔。我怎樣才能做到這一點?

回答

0

謝謝馬克B. 與ob_start(); include('yourfile.php'); $executed_data = ob_get_clean();我可以實現我的目標。

0

file_get_contents()不執行任何代碼。它只是吸收文件的字節並將這些字節填充到變量中。

如果你想在外部文件中執行任何PHP,你必須要include()require()它。

+0

是的,但include()將內容輸出到瀏覽器中,我想將內容存儲在變量中,以便稍後將其傳遞給PDF生成器。 –

+0

'ob_start();包括( 'yourfile.php'); $ executed_data = ob_get_clean()'。 –