1

我刚刚开始研究使用 Mustache.php(在听到有关该库的好消息之后)。但是查看文档,您似乎必须将 HTML 模板代码存储在 PHP 变量中,以便 Mustache 能够访问它 - 这对我来说似乎很混乱,所以我想找到另一种方法来做到这一点(例如 file_get_contents 的纯 .html 文件)。

这是我正在搞乱的代码......

$template = '
  <p>Hello {{name}}</p>
  <p>Sorry, you\'re a {{type}}!</p>
  {{#under_18}}
   <p><strong><u>{{generate_random_stuff}}</u></strong>.<p>
  {{/under_18}}
 ';

......所以相反,我认为这对我们的前端开发人员来说更容易管理......

$template = file_get_contents('template.html');

...其中'template.html'仅包含...

<p>Hello {{name}}</p>
<p>Sorry, you're a {{type}}!</p>
{{#under_18}}
<p><strong><u>{{generate_random_stuff}}</u></strong>.<p>
{{/under_18}}

但我不确定使用 file_get_contents 的效率如何?与在变量中存储为字符串相比?尤其是在多个页面视图或在单个页面上有多个模板 html 文件时。

你能给我的关于这类东西的任何信息,我将不胜感激。

4

1 回答 1

2

据我了解,Mustache 的目标不是承担获取模板的责任。

您可以在代码中安全地使用本地文件的 file_get_contents 并且不会很快遇到性能问题。

如果您遇到性能问题(例如,因为您的硬盘驱动器太慢或忙于做其他事情),请开始查看内存缓存(例如,参见 memcache 或 redis),但我很确定您不会很快就遇到了这个瓶颈。

在 PHP 下,你也可以看看 Smarty 模板引擎,它非常高效(它将模板预编译为 php)。

我希望这能帮到您,

杰罗姆

于 2010-12-19T22:32:22.460 回答