1

我正在托管一个用 PHP 编写的多区域解决方案,每个客户在一些 HTML 文件中都有自己的模板。现在我希望这些用户能够使用一些动态内容块,但他们不能使用 PHP。我想是这样的:

在 HTML 文件中,如果我把这个:

<ul>[menu-list]</ul>

将输出如下内容:

<ul><li><a[...]>Home</a></li><li><a[...]>About</a></li>[...]</ul>

有没有比通过file_get_contents()and继续解析和缓存文件更好的方法preg_match_all()呢?

我想创建大约 20 个条目[menu-list],并且为所有这些文件解析每个文件对我来说似乎相当昂贵。

我很感激任何建议。=D

4

2 回答 2

1

也许您应该考虑使用模板编译器而不是模板解释器。也就是说,不是每次加载页面时都执行整个替换过程,您只需在模板修改后执行替换即可。在模板编辑期间,成本应该可以忽略不计。要实现此编译,您可以选择在一些面包屑中“编译”,这样您就可以倒退,或者您可以简单地保存原始模板文件以供以后编辑。

或者,您可以考虑使用 PHP 变量命名约定并通过eval.

于 2010-06-28T03:25:54.303 回答
0

为什么不能使用Smarty和朋友?我不想写你自己建议的东西。

于 2010-06-28T03:30:37.507 回答