2

我想在 CodeIgniter 视图中使用像 {{headline}} 这样的标签而不是 PHP,我正在寻找一个模板解析器。CodeIgniter 有一个内置的模板解析器:http ://www.ellislab.com/codeigniter/user-guide/libraries/parser.html

问题是使用内置解析器还是其他解析器更好?CI 模板解析器是否有任何限制,例如不支持循环、if 语句等?

如果是这样,还有许多其他解析器,但似乎开发人员在它们上工作了一段时间,然后在不再受支持时陷入麻木状态。我正在寻找一个也将在一年内得到支持的解析器:

http://backstack.ca/projects/bucket/

Comper 模板解析器 http://parser.comper.sk/en/

Ocular-Template-Library http://github.com/lonnieezell/Ocular-Template-Library

Phil Sturgeon 模板库 http://philsturgeon.co.uk/code/codeigniter-template

PyroCMS Lex 解析器 http://github.com/pyrocms/lex

CodeIgniter 的模板库 http://www.williamsconcepts.com/ci/codeigniter/libraries/template/

最活跃的似乎是 Comper 和 Lex Parser。Phil Sturgeon 模板库和 PyroCMS Lex Parser 有什么区别,因为它是同一个开发人员?

我正在寻找的是: - 在视图中分离 PHP 和 HTML/CSS - 得到可靠支持,因此它不会在一年内停滞不前 - 使用简单的标签,但也使用循环、if 语句和其他函数

谁能给我小费?CI 论坛或其他地方的现有信息并没有真正有用。

非常感谢!

菲利普

4

1 回答 1

0

如何选择模板引擎

我经历了一个类似的选择 PHP/CMS 系统的练习,这里有一些要点可能会延续到您的决策过程中。

  1. 我首先查看文档以了解对系统有多少支持,评估功能范围等等。我还看看是否有一个在线论坛有足够的活动可以在需要时获得一些帮助。

  2. 然后我尝试安装,看看它是否顺利。如果我在这个阶段遇到问题,我可能会直接退出并尝试另一个系统,除非有在线论坛或帮助台提供现成的答案。

  3. 然后我建立了一个示例网站(2-3 页)并尝试了我需要的功能。在 CodeIgniter 的情况下,我可能将内容存储在多个数据库表中,并且我评估将我的 SQL 查询中的数据获取到模板系统可以使用的数组结构中需要付出多少努力。这通常是开发网站时最费力的步骤。

  4. 我还检查了将 PHP 函数集成到组合中的难易程度。例如,我曾经必须构建一个专门的函数来确定日期范围,并且必须将这些日期传递给模板引擎。我能够做到,但需要付出很多努力。模板系统几乎不支持解析日期,我不得不求助于 PHP 函数来完成这项工作。

概括

最终,您将需要尝试其中一些系统来感受它们。完成后,选择一个对您的编码风格、易用性和数据结构有意义的。

附言

我没有使用您上面列出的系统,但我花了很多时间使用 Expression Engine 中的模板引擎(来自创建 CodeIgniter 的同一组的 CMS)。我的评论基于我使用 Expression Engine 实现数据库驱动的网站以及处理该特定平台的限制和怪癖的经验。

于 2013-08-21T00:10:36.723 回答