0

我正在创建一个新网站,第一次使用 CodeIgniter。在视图中,编写了 PHP 代码。我正在考虑将代码与显示完全分开,就像我几年前使用 Smarty 所做的那样。

我找到了 CodeIgniter 提供的模板引擎:http: //ellislab.com/codeigniter/user-guide/libraries/parser.html

但在页面内部,我发现了这个注释:

注意:CodeIgniter 不需要您使用此类,因为在您的视图页面中使用纯 PHP 可以让它们运行得更快一些。但是,如果一些开发人员与设计人员一起工作,他们会更喜欢使用模板引擎,他们觉得使用 PHP 会有些困惑。

所以,我需要一些帮助来选择正确的东西。我应该使用纯 PHP 吗?当编码风格已经是 MVC 时,使用这样的模板引擎有什么好处?使用我已经知道一点的Smarty会更好吗?

该网站需要非常安全且非常快速,将使用大量 AJAX(我也在考虑安装 websocket,但没有指向当前问题的链接)。

谢谢你的帮助 !

4

2 回答 2

1

如果您需要快速的应用程序,那么您在选择 Codeigniter 时受到了很大的启发,因为它是一个非常轻量级的框架,并且在不涉及缓存的情况下,它可以很容易地解决大多数速度问题。

有一种说法是除非你需要,否则你不应该扩展,我认为它在这里非常适用。除非您要显示兆字节的数据,否则我看不出选择模板引擎会如何损害应用程序的整体速度。如果确实发生了这种情况,您可以随时查看缓存一些响应/各种其他信息或第三方解决方案(即 Gearman),这目前可能有点过头了。

如果您想学习新东西,请使用 Codeigniter 模板库;如果您需要快速开发某些东西,请使用您最了解的工具。作为一个偏好问题,我喜欢 Twig,并且有一个 CI 实现,称为 Twiggy:http ://edmundask.github.io/codeigniter-twiggy/

至于安全性,我想说它不如企业级框架强大,比如 Symfony 或 ZF2,后者更强调这一点。它们本身就是更完整的包,并且通过缓存,它们执行得非常快,但它们具有更高的学习曲线。

更新:我的意思是,除非您显示大量数据,否则您不应该考虑模板引擎的速度,这对您的页面渲染速度的影响可以忽略不计。不要以为这是用户会注意到的事情,因为执行时间的 0.0x 量级并不明显。在这里看看 SMARTY 和 Twig 之间的比较:http ://umumble.com/blogs/php/249/

Smarty 的执行时间为 0.058 秒,而 Twig 的执行时间为 0.083 秒。模板引擎总是带来开销,它们的功能是使开发更容易,并且在与设计师合作时会有所帮助。

于 2013-10-11T14:03:00.823 回答
1

如果您想使用模板引擎,我建议使用 Twig。 http://twig.sensiolabs.org/

于 2013-10-11T13:53:25.357 回答