2014-04-11 177 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()'。 –