PHP : ob + include (或) 只包含 .以引入文件


PHP : ob + include (or) include only .. to bring in the files?

我正在用PHP制作一个简单的MVC框架。现在我必须决定是否应该使用:
(其中有这些方法)

ob_start();
include(....);
ob_get_contents();

include(....);

说真的哪一个是标准(或者应该是什么?)..因为我可以看到我所有的$variables(上面一直分配)都可以从模板文件中重新调用...被上面的任一方法调用。

从你的问题中,我可以假设你不使用任何模板引擎,你的视图包含真正的PHP变量,但不包含%var%之类的东西。如果您的框架非常简单,并且每个页面/控制器调用只有一个模板,则不需要输出缓冲。就像你说的,你只是在分配了所有变量后放了你的单包含。否则,如果您有子模板或类似的东西(因此您有多个包含),则应使用输出缓冲。这里的一个关键功能是可以将 ob_get_contents() 结果存储在变量中,因此您可以像处理简单字符串一样处理视图内容。这允许考虑其他一些不错的功能,例如缓存视图内容等。