搜索
首页php教程PHP开发CodeIgniter学习笔记 Item8--CI辅助函数

辅助函数是帮助我们完成特定任务的函数。每个辅助函数文件仅仅是一些函数的集合。例如,URL Helpers 可以帮助我们创建链接,Form Helpers 可以帮助我们创建表单,Text Helpers 提供一系列的格式化输出方式,Cookie Helpers 能帮助我们设置和读取COOKIE, File Helpers 能帮助我们处理文件,等等。跟其他部分不同的是,辅助函数不是用类的方式来实现的。它们仅仅是一些简单的过程处理函数。 每个辅助函数处理一个特定的任务,并且不必依靠其他函数。

CodeIgniter默认是没有载入辅助函数文件的,所以如果你想用辅助函数,就必须先载入它。一旦被载入,辅助函数将全局可用。辅助函数文件一般保存在system/helpers
或 application/helpers 文件夹中。CodeIgniter 将会先在application/helpers
寻找对应的辅助函数文件, 如果目录不存在或者目录下没有对应的辅助函数文件,CI 才会载入 system/helpers 下的辅助函数文件。

载入辅助函数是非常简单的:

[code]$this->load->helper('name');

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

例如,要载入文件名为url_helper.php
的URL Helper,你将会用到下面的语句:

[code]$this->load->helper('url');

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

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

[code]<?php echo anchor(&#39;blog/comments&#39;, &#39;Click Here&#39;);?>

“Click Here” 是链接的名字,”blog/comments” 是链接的URI。

如果想”扩展”一个原有的Helpers,可以在你的application/helpers/目录下创建一个新的helper,新的helper的名字是在被“扩展”的Helper的名字开头多加一个MY_,这里的前缀是可以配置的,为了设置你自定义的前缀,请打开application/config/config.php
文件,然后找到如下的条目:

[code]$config[&#39;subclass_prefix&#39;] = &#39;MY_&#39;;

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

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

[code]// 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);
}

 以上就是CodeIgniter学习笔记 Item8--CI辅助函数的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器