php输出缓冲 - 防止部分代码被解析?

时间:2014-03-06 11:30:04

标签: php output-buffering

我使用输出缓冲生成静态HTML页面 使用包含。

有没有办法阻止PHP代码的某些部分被解析?所以,而不是输出,PHP仍然完好无损?

2 个答案:

答案 0 :(得分:1)

根据PHP文档:

  

当包含文件时,它包含的代码将继承发生包含的行的变量范围。从那时起,调用文件中该行可用的任何变量都将在被调用文件中可用。但是,包含文件中定义的所有函数和类都具有全局范围。

话虽如此,我认为你不能在这里使用include。如果您不希望PHP解释器解析PHP代码,我会使用file_get_contents()或类似的东西。这将允许您在不解析任何PHP代码的情况下获取文件。

答案 1 :(得分:0)

如果您希望html的不同部分具有不同的缓存策略,那么实现此目的的方法是将脚本拆分为生成单独HTML片段的部分,然后使用另一个脚本将这些位重新连接在一起。这样做有一个标准 - ESI - 但与with SSI

相比,它可能有点简洁(最好在反向代理上实现)