CI框架中libraries,helpers,hooks文件夹详细说明


Posted in PHP onJune 10, 2014

1.library文件夹

如果你想扩展CI的功能,那么就把你的类库放在这,注意,这个文件夹是有class组成的,可以看看如果加载library注意事项!

2.helper文件夹

如果你需要使用一些函数来帮你完成一些小功能,那么就把它放着,这里都是过程式的代码而不是类,一般helper是用于view的,
使用方法如下:

$this->load->helper('filename')

filename是辅助函数对应的文件名,不包括_helper.php扩展名。文件名应该保存为:filename_helper.php,放在helper文件夹下!

3.hooks文件夹

存放你创建的钩子。钩子是 用来装载其它文件的控制方法,不能被控制器等调用,是系统自动调用的。当 CodeIgniter
运行后,它会产生出一个特殊的进程。
当然,您可以自定义一些动作来替代程序运行过程中的某些阶段。例如,您可以在控制器刚刚载入前或刚刚载入后来运行特定的脚本,或者在其他时刻来触发您的脚本。

CI的七个挂载点:

pre_system

系统执行的早期调用.仅仅在benchmark 和 hooks 类 加载完毕的时候. 没有执行路由或者其它的过程.

pre_controller

在调用你的任何控制器之前调用.此时所用的基础类,路由选择和安全性检查都已完成.

post_controller_constructor

在你的控制器实例化之后,任何方法调用之前调用.

post_controller

在你的控制器完全运行之后调用.

display_override

覆盖_display()函数, 用来在系统执行末尾向web浏览器发送最终页面.这允许你用自己的方法来显示.注意,你需要通过$this->CI =& get_instance()引用 CI 超级对象,然后这样的最终数据可以通过调用$this->CI->output->get_output()来获得。

cache_override

可以让你调用自己的函数来取代output类中的_display_cache()函数.这可以让你使用自己的缓存显示方法

post_system

在最终着色页面发送到浏览器之后,浏览器接收完最终数据的系统执行末尾调用 
关于钩子的使用,手册上有详细的使用说明,截图如下:

CI框架中libraries,helpers,hooks文件夹详细说明

PHP 相关文章推荐
使用PHP提取视频网站页面中的FLASH地址的代码
Apr 17 PHP
需要注意的几个PHP漏洞小结
Feb 05 PHP
PHP获取http请求的头信息实现步骤
Dec 16 PHP
编写php应用程序实现摘要式身份验证的方法详解
Jun 08 PHP
php中自定义函数dump查看数组信息类似var_dump
Jan 27 PHP
CodeIgniter基于Email类发邮件的方法
Mar 29 PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
Sep 14 PHP
thinkPHP模板引擎用法示例
Dec 08 PHP
lnmp安装多版本PHP共存的方法详解
Aug 02 PHP
PHP中number_format()函数的用法讲解
Apr 08 PHP
Laravel-添加后台模板AdminLte的实现方法
Oct 08 PHP
详解Laravel服务容器的绑定与解析
Nov 05 PHP
PHP图片等比例缩放生成缩略图函数分享
Jun 10 #PHP
CI(CodeIgniter)框架中的增删改查操作
Jun 10 #PHP
PHP定时更新程序设计思路分享
Jun 10 #PHP
CI(CodeIgniter)框架配置
Jun 10 #PHP
教你如何用php实现LOL数据远程获取
Jun 10 #PHP
PHP面向对象教程之自定义类
Jun 10 #PHP
微信营销平台系统?刮刮乐的开发
Jun 10 #PHP
You might like
php初始化对象和析构函数的简单实例
2014/03/11 PHP
php猴子选大王问题解决方法
2015/05/12 PHP
php判断邮箱地址是否存在的方法
2016/02/13 PHP
window.open()弹出居中的窗口
2007/02/01 Javascript
js弹出层包含flash 不能关闭隐藏的2种处理方法
2013/06/17 Javascript
JQuery Highcharts 动态生成图表的方法
2013/11/15 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
浅谈javascript回调函数
2014/12/07 Javascript
JavaScript实现带播放列表的音乐播放器实例分享
2016/03/07 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
js操作数据库实现注册和登陆的简单实例
2016/05/26 Javascript
jQuery插件学习教程之SlidesJs轮播+Validation验证
2016/07/12 Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
2016/09/03 Javascript
nodejs中安装ghost出错的原因及解决方法
2017/10/23 NodeJs
Vue.directive 自定义指令的问题小结
2018/03/04 Javascript
微信小程序 动态修改页面数据及参数传递过程详解
2019/09/27 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
[04:19]DOTA2亚洲邀请赛 现场花絮
2015/03/11 DOTA
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
python实现NB-IoT模块远程控制
2018/06/20 Python
Flask实现图片的上传、下载及展示示例代码
2018/08/03 Python
澳大利亚儿童和婴儿产品在线商店:Lime Tree Kids
2017/10/05 全球购物
莫斯科购买书籍网站:Book24
2020/01/12 全球购物
求职简历中个人的自我评价
2013/12/25 职场文书
毕业自我评价
2014/02/05 职场文书
法律七进实施方案
2014/03/15 职场文书
双方协议书
2014/04/22 职场文书
节能环保口号
2014/06/12 职场文书
幼儿园爱国卫生月活动总结
2014/06/30 职场文书
暑期培训心得体会
2014/09/02 职场文书
个人授权委托书模板
2014/09/14 职场文书
政协会议宣传标语
2014/10/09 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS
oracle删除超过N天数据脚本的方法
2022/02/28 Oracle
SpringBoot项目多数据源及mybatis 驼峰失效的问题解决方法
2022/07/07 Java/Android