Helper在CodeIgniter中的优势是什么?

时间:2013-08-29 18:58:44

标签: php codeigniter

我开始学习CodeIgniter。我看到一些优点,例如MVC约定。但在很多情况下,我看不出CI如何帮助我更快地发展。

例如,这个

$attributes = array('class' => 'email', 'id' => 'myform');
echo form_open('email/send', $attributes);
可以使用

代替

<form method="post" 
      accept-charset="utf-8" 
      action="http:/example.com/index.php/email/send"  
      class="email"  
      id="myform" />

我不明白为什么这会更快。

此外,还有用于创建<h1>标记的HTML帮助程序。我也没有看到在这里使用助手的好处。

那我为什么要使用这些助手?

4 个答案:

答案 0 :(得分:1)

帮助者可以让您的生活更轻松,甚至可以让您编写更清晰的代码,有时会牺牲灵活性。

在您的示例中,没有重大改进 - 无论是性能明智还是代码长度明智 - 但并非所有CodeIgniter助手都应该这样做。

就个人而言,我不喜欢为我编写HTML的框架,但我想要帮助我,计算一些数据。 将它们视为静态方法,如果需要,可以从控制器,模型甚至视图中全局访问。您将数据作为参数发送给它们,它们处理它并返回结果。

一些我不能没有的Codeigniter助手是'url '和'date'

答案 1 :(得分:1)

我同意有一些助手几乎没用,因为有些人使用更多代码而不是编写他们输出的HTML结果。但是还有其他助手让生活变得更加轻松,url成为第一个浮现在脑海中的人。

此外,辅助结构非常有用。如果您发现自己在视图中一遍又一遍地重复格式化数据,则应考虑创建(或扩展)帮助程序并使用它。虽然并非所有助手都有用,但有可能添加它们非常方便。

答案 2 :(得分:0)

有趣的是,我有完全相同的反应。但即使这种形式开放也有帮助。

  • 在您的示例中,表单打开允许您指定代码,而无需使用或混合任何HTML 。清洁写作和审查。减少错误。

  • 不同类型的表单字段的相同想法。考虑一下你是否将数据库中的值传递到表单字段中。就像正在更新的用户记录一样。除非你使用表单助手,否则它将成为一个可怕的php&amp; html&amp; echo语句 - 用于每个表单字段。

  • 真正的回报?特别是在处理多个表单时 - 您可以在配置文件中指定表单字段的值 - 然后使其可供查看。那么重要的是一个简单的数组,你几乎不必触摸视图。

答案 3 :(得分:0)

表单助手的一个很好的用例是下拉列表(select,option),因为您可以从变量中传递默认值,而无需循环选项并设置'selected="selected"'