判断是否已经缓存 已经缓存: include缓存文件,并输出 未缓存 生成缓存数据 写入缓存文件 直接输出缓存(这里比再去include读文件再输出,要直接)
ob_get_contents, ob_end_clean从实现上应该是ob_get_clean的分解步骤。后者因为从c代码层面的整合,在仅单次执行时,速度上应该有微量的优势。因为优势远比网络IO的延迟要小,几乎可以忽略吧。 echo ob_get_contents应该也一般是用于首次生成模板缓存。是内存操作。 include用于直接显示。是文件操作。 显示模板可以用后者,做缓存所节约的时间主要是处理计算和各媒介之间的IO上的,根据自己的应用和自己的设备环境在慢的、瓶颈部分作出调整,是灵活的。没有定式。