所以在工作中,我们有一个自制的模板系统,它重量轻,到目前为止对我们来说效果很好。
我们遇到的障碍是我们希望能够循环一个模板。用例类似于搜索结果。我们正在努力想办法做到这一点。我们现在想出了三种方法。首先是将 html 存储在循环中,然后循环遍历它并使用 concat 将变量放入 html 中。我们想到的第二种方法是重复包含一个文件。第三种方法是包含文件一次,使用输出缓冲来捕获其输出,将文本 echo " 添加到它,然后在其上使用 eval。(我的老板希望我们想出创造性的方法来做到这一点)。
好吧,我更喜欢包含重复方法,因为它允许我们将 html 与逻辑完全分离。eval 方法也可以做到这一点,但它似乎更骇人听闻。好吧,我们对此进行了一些时间测试,发现将 html 放在循环中(方法一)是最快的,紧随其后的是 eval 方法,包括多次进入最后。包括实际上比 eval 方法慢了大约 5-6 倍。(我们包含文件/评估文件 1000 次,并做了 100 次并对它们取平均值以获得我们的结果)。
有什么方法可以加快多重包含?(看起来每次我们执行 include php 都会再次访问文件系统。)
或者有没有人有办法完成这种事情?