在包含文件内容之前运行功能?

时间:2011-07-19 15:42:35

标签: php

目前,我正在包含我的HTML“视图”:

include $path_to_view;

我希望能够在包含它之前对视图文件的内容运行一个函数,但是我不知道如何做到并且仍然包含视图而不使用eval:

我基本上想对函数的结果执行“include”类型的操作。像这样:

include foo_function(file_get_contents($path_to_view));

我怎样才能做到这一点,或者是我唯一的选择?

修改

我目前正在使用输出缓冲区。我不打算更改磁盘上的视图内容,我只想获取视图的内容,对这些内容运行一个函数,并“包含”内容以便对它们进行评估。

2 个答案:

答案 0 :(得分:1)

听起来你正在寻找输出缓冲。请看ob_start

<?php

function callback($buffer)
{
  // Do something useful here.

  return $buffer;
}

ob_start('callback');

include $path_to_view;

ob_end_flush();

答案 1 :(得分:0)

查看输出缓冲区。您可以将文件的内容放入var中,然后照常解析。

祝你好运。