codeigniter模板解析

时间:2013-01-16 15:04:24

标签: php codeigniter codeigniter-2 template-engine

codeigniter中的模板解析实际上是如何工作的?

我在视图文件中有以下部分

<h2>{blog_heading}</h2>
<div>{blog_entries}</div>

并在控制器中

$this->load->library('parser');

$data = array(
            'blog_heading' => 'My Blog Title',
            'blog_entries' => $products_array()
            );

$this->parser->parse('blog_template', $data);

效果很好,但问题是我有很多像这样的标签,所以我需要在控制器上定义一切吗?

问题在于性能,用户每次都不会使用所有标签。

请帮我解决问题。

由于

1 个答案:

答案 0 :(得分:-1)

回答你的问题,是的,你应该在控制器上创建所有变量。当用户访问您的控制器时,您可以在那里检查“所需”标签,然后根据用户首选项或应用程序的要求仅显示所需的标签。在视图上,您​​应该只显示标签。如果您正在进行计算并更改打破整个MVC概念的视图的值,那么CodeIgniter的全部原因。

您不应该仅仅因为可以在控制器中创建变量:)只有在访问者需要时才需要创建变量。如果您正在创建所有标记但未在视图上显示所有标记,那么您可能需要一种方法来识别所需的标记,然后根据用户选择和需求创建新标记,使用另一个控制器或相同的信息。

如果您正在对控制器进行计算,然后对视图进行更多计算,则该代码对于MVC模型不正确。计算和定义必须在控制器中完成。在视图中,您可以根据所需条件选择是否要显示该变量,但不要更改其内容。

总之,必须在控制器中创建所有变量才能维护MVC概念。

希望这可以帮助您更多地了解CodeIgniter。这是一个很棒的框架,你需要确保你以正确的方式使用它。

亲切的问候。