signaturehelper.php,CodeIgniter辅助函数helper用法详解

$this->load->helper('name');复制代码

其中name是辅助函数文件的名字(不带.php后缀 和"helper" 部分)。

例如,要载入文件名为url_helper.php的URL Helper,可采用下面的语句:

$this->load->helper('url');复制代码

辅助函数可以在你的控制器(controller)的任何地方被载入,甚至可以在视图(View)文件中被载入(我们并不建议你这么做)。 请在使用辅助函数之前载入他们。你可以在你的控制器构造函数中载入它们,以便辅助函数能自动在其他函数之前被载入。你也可以在要用到辅助函数的地方当场载入。

注意: 辅助函数载入函数并不返回值,所以不要尝试将它付给一个变量,直接像这样用就可以了。

3,载入多个辅助函数

如果你想一次载入多个辅助函数,你可以这样做:

$this->load->helper( array('helper1', 'helper2', 'helper3') );复制代码

4,自动载入辅助函数

如果你想要的话,CodeIgniter可以自动为你载入辅助函数。你可以通过打开 application/config/autoload.php ,并往自动载入数组(autoload array)中增加辅助函数来实现。

5,使用辅助函数

一旦载入了想要用到辅助函数文件,你就可以用标准的函数调用方法来使用里面的函数。

例如,要使用anchor() 函数来建立一个链接,在视图(View)文件里面你可以这样做:

echo anchor('blog/comments', 'Click Here');

?>复制代码

这里的"Click Here" 是链接的名字,"blog/comments" 是链接的URI。(程序员之家 bbs.it-home.org 收集整理)

注意:辅助函数中的函数名最好做好命名规范,如果同时加载多个辅助函数文件,且其中有名称相同的函数,会导致 CI 出现空白页问题(这也是 PHP 语法错误)。

6,“扩展”辅助函数

如果想 "扩展"一个原有的 Helpers,可以在application/helpers/ 目录下创建一个新的helper,新的helper的名字是在被“扩展”的Helper的名字开头多加一个 MY_ (这是可以配置的. 见下.).

如果只是在原有的helper中添加一些新的功能,比如,添加一两个新的方法,或者是修改一个方法;就不值得重写自己的helper。在这种情况下,最好是“扩展”已有的helper。“扩展”一词用在这里不是很恰当,因为Helper的方法是过程式的(procedural) 和离散(discrete)的,在传统的语言环境中无法被“扩展”,不过在CodeIgniter中,你可以添加或修改helper的方法。

例如,扩展一个本地已有的 Array Helper 你应该建立一个文件: application/helpers/MY_array_helper.php, 并添加或重写(override)其中的一些方法:

// any_in_array() is not in the Array Helper, so it defines a new function

function any_in_array($needle, $haystack)

{

$needle = (is_array($needle)) ? $needle : array($needle);

foreach ($needle as $item)

{

if (in_array($item, $haystack))

{

return TRUE;

}

}

return FALSE;

}

// random_element() is included in Array Helper, so it overrides the native function

function random_element($array)

{

shuffle($array);

return array_pop($array);

}复制代码

7,设定前缀(Prefix)

用于"扩展" helper 而加上前缀的文件同样也是对库和核心类的扩展。

为了设置自定义的前缀,请打开 application/config/config.php 文件,找到:

$config['subclass_prefix'] = 'MY_';复制代码

注意:由于所有CodeIgniter自带的库都被冠以 CI_ 这样的前缀命名,所以请不要使用CI_来自定义前缀.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值