【问题标题】:CodeIgniter Does Not Require a Template EngineCodeIgniter 不需要模板引擎
【发布时间】:2013-01-31 23:55:11
【问题描述】:

请解释什么是模板引擎,以及它的用途。下面的段落想表达什么?我不听作者的解释。

虽然 CodeIgniter 带有一个简单的模板解析器,它可以 可以选择使用,它不会强迫您使用一个。模板引擎 根本比不上原生PHP的性能,还有语法 必须学会使用模板引擎通常只有 比学习 PHP 的基础知识要容易一些。考虑这个块 PHP 代码:

<ul>

<?php foreach ($addressbook as $name):?>

<li><?=$name?></li>

<?php endforeach; ?>

</ul>

将此与模板引擎使用的伪代码进行对比:

<ul>

{foreach from=$addressbook item="name"}

<li>{$name}</li>

{/foreach}

</ul>

是的,模板引擎示例更简洁一些,但它位于 性能的代价,因为伪代码必须转换回 PHP 运行。由于我们的目标之一是最大性能,我们选择 不需要使用模板引擎。

【问题讨论】:

  • 谁想向你解释什么?你显然在引用一些东西。告诉我们什么。
  • 一些人说模板引擎对于不懂编程的设计师来说更容易使用,但现在已经不是这样了,所以基本上在 php 中这是浪费时间。

标签: php codeigniter phpmyadmin cakephp-1.3 codeigniter-2


【解决方案1】:

模板引擎只是将后端代码嵌入到 html 中的一种方式。这在 Python 和 Ruby 等语言中比 PHP 更常见,因为 PHP 已经支持在 html 代码中嵌入。

对于那些来自其他后端语言的人来说,特定的模板引擎可能更容易,尤其是 Python 或 Ruby,因为 Django 和 Rails 的模板语法看起来非常相似。

虽然不一定是“模板引擎”,但我通常组织我的 Codeigniter 项目,其中我有一个包含骨架布局的 template.php 视图,并且站点/应用程序的每个页面的内容是一个单独的视图,在其中加载模板.php 文件。这样我就不会在每一页上重写代码。

模板引擎完全取决于个人喜好——它们不是必需的,但如果习惯了,有些人会觉得使用它们会更舒服。人们越少考虑他们的工作流程,他们就越有效率!

【讨论】:

    【解决方案2】:

    在 CodeIgniter 用户指南中描述 CodeIgniter 确实带有一个可以选择使用的简单模板解析器,它不会强迫您使用一个。

    但是如果你想使用模板,我建议使用这个库,它非常简单。

    http://williamsconcepts.com/ci/codeigniter/libraries/template/reference.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-04
      • 1970-01-01
      • 2021-04-11
      • 2017-01-11
      • 1970-01-01
      • 1970-01-01
      • 2021-12-14
      • 1970-01-01
      相关资源
      最近更新 更多