框架助手,它们的用途是什么?

时间:2011-04-06 16:55:14

标签: php codeigniter frameworks helper

我开始研究一些框架。特别是Code Igniter让我很着迷。但通过文件夹搜索我发现system/helpers包含21个PHP文件。在这些文件中,我们发现了数千个与html,xml,字符串,数组,数字,表单等相关的函数。

这应该很简单,但我真的不明白这些helper文件的含义。我的意思是:什么通常被认为是帮手?他们需要吗?我可以在没有风险的情况下删除它们吗?

4 个答案:

答案 0 :(得分:9)

包括CodeIgniter在内的许多框架中的“帮助器”是指一组函数,通过将多个进程分组到一个函数中,可以更轻松地完成简单的例行任务。

可以找到CodeIgniter助手的官方文档here

它提供了以下解释:

  

Helpers,顾名思义,可以帮助您完成任务。每个帮助文件   只是一组函数   一个特定的类别。有URL   助手,帮助创造   链接,有Form Helpers   帮助您创建表单元素,文本   助手执行各种文本   格式化例程,Cookie助手   设置和读取cookie,文件助手   帮助您处理文件等。

帮助函数列表及其功能也可以在文档中找到。

PS。您不应删除系统目录中的任何文件,因为它们可能依赖于核心内容。您可以创建自己的帮助程序,这些帮助程序放在application / helpers目录中。

答案 1 :(得分:3)

助手是为简化某些任务而提供的功能,例如验证或输入清理。你不应该删除它们,事实上,应该尽可能地使用它们,因为它们通常做得很好并经过充分测试。

答案 2 :(得分:2)

您永远不应删除库/框架的文件。它们旨在“作为一个整体”工作。在用户方面,理由很简单,将库/框架切割成碎片是有意义的。所以你可能一无所获,但冒着风险,你就会破坏一些东西。

但是,“Helpers”是一个通用概念,它提供了一些简单的功能,另一个组件可以使用(或不使用),而无需直接实现它。请参阅codeigneter手册,了解这些助手哪个部分有用的提示。

答案 3 :(得分:1)

您当然不应该从框架的核心/系统文件中删除任何帮助程序,因为这些功能通常会在其他库中使用,并可能导致各种问题。

您不必在应用中使用它们,它们不会导致明显的性能问题。

一开始它们看似多余,但CI例如非常有用(正如您可能期望的那样)。

您可能认为表单助手或HTML助手只会产生开销,您可以自己键入相应的HTML,但请注意:

   <form action="<?php echo site_url('controller/method'); ?>" method="post">

    // or using the form helper

    <?php echo form_open('controller/method');

保存你自己所有这些额外的角色,以及拼写错误,错误输入等的风险。

菲尔·斯特金对使用助手以及他们摇滚的原因大加咆哮,这可能是found here,提出了几点好处。

修改

为了证明我的观点!

$attributes = array('class' => 'email', 'id' => 'myform');
$hidden = array('hidden_value'=>'1234', 'hidden_value_2' => 'foobar');

echo form_open('email/send', $attributes, $hidden);