对CI框架中几个文件libraries,helpers,hooks夹说明

来源:未知    时间:2014-10-20 11:37   阅读数:117   作者:xbdadmin

[导读] 1.library文件夹 如果你想扩展CI的功能,那么就把你的类库放在这,注意,这个文件夹是有class组成的,可以看看如果 加载library注意事项 ! 2.helper文件夹 如果你需要使用一些函数来帮你...

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的更多相关文章

  1. CI框架中自定义view文件夹位置

    要想自定义view文件夹的位置,首先要了解CI框架时如何加载view文件夹的. CI中默认调用view的方法是: $this->load->view(); //这一行代码的原理是什么呢?请 ...

  2. CI 框架中的自定义路由规则

    在 CI 框架中,一个 URL 和它对应的控制器中的类以及类中的方法是一一对应的,如: www.test.com/user/info/zhaoyingnan 其中 user 对应的就是控制器中的 us ...

  3. php json_encode在CI框架中的使用细节

    这个错误的造成原因是加载类类库,转换成json格式的时候不熟悉CI框架的规定导致的,CI框架中规定在将数据转换成json格式的时候需要将类库小写,当然了,调用的时候必须保证有这个类库,且可以在对应的文 ...

  4. php CI框架中URL特殊字符处理与SQL注入隐患

    php CI框架中URL特殊字符处理与SQL注入隐患 php CI框架中URL特殊字符有很多是不支持的,导致像c++,括号这些常用的分类,字符都无法正常显示很头痛,而在配置里增加单引号' 反斜杠\ 这 ...

  5. 在ASP.NET MVC 框架中调用 html文件及解析get请求中的参数值

    在ASP.NET MVC 框架中调用 html文件: public ActionResult Index() { using (StreamReader sr = new StreamReader(P ...

  6. CI框架中集成CKEditor编辑器的教程

    CKEditor是在很多开发过程中都会用到的一个富文本编辑器,那么如何在CI框架中使用它呢?这里介绍了在CI下使用CKEditor的方法,版本比较低,是在CI 1.7.3下使用fckeditor 2. ...

  7. CI 框架中的日志处理 以及 404异常处理

    最近在整理项目中的日志问题,查了一些关于 “CI 框架中的日志处理 以及 404异常处理” 的东西,顺便记录一下: 关于错误日志: 1. 在CI框架中的 system/core/CodeIgniter ...

  8. CI框架中的奇葩

    今天在win下开发,使用ci框架,本来是没有任何问题,然后转向了mac上开发,结果出现了个奇葩的问题,就是在ci框架中,控制器命名以"Admin_"为前缀的,在url中,控制器也必 ...

  9. spring boot 在框架中注入properties文件里的值(Spring三)

    前一篇博客实现了打开第一个页面 链接:https://blog.csdn.net/qq_38175040/article/details/105709758 本篇博客实现在框架中注入propertie ...

随机推荐

  1. Hibernate(十)--spring整合hibernate

    结构: Spring和Hibernate整合借助于HibernateTemplate applicationContext.xml <?xml version="1.0" e ...

  2. gitlab访问慢,出现502,特别卡,耗内存cpu解决办法

    前言 浏览器访问gitlab的web页面,发现非常慢,并且很容易出现502问题.其中一个原因就是8080端口被tomcat占用,前面一篇已经更换了端口,但还是很慢.后来搜了下,原因是gitlab占用内 ...

  3. STM32之GD25Q256应用笔记

    前言 使用标准SPI指令格式: 3字节地址模式或4字节地址模式: 支持SPI 总线 模式0 和 模式3: 存储容量32MB: 时钟频率范围:80Mhz – 104Mhz: 主机:STM32F103ZE ...

  4. Problem I: Ingenious Lottery Tickets

    Problem I: Ingenious Lottery Tickets Your friend Superstitious Stanley is always getting himself int ...

  5. 将数据写入已有的excel文件

    /** * 将反馈结果写入excel中 * */ public static void writeExcelResult(String url,List<Integer> result) ...

  6. [LeetCode] 932. Beautiful Array 漂亮数组

    For some fixed N, an array A is beautiful if it is a permutation of the integers 1, 2, ..., N, such ...

  7. vuejs+thinkphp5+phpsocketIO+timer数据及时更新

    1.安装thinkphp5.0以上版本包含workerman框架2.composer安装composer require workerman/phpsocket.io3.vue中调用需要加载weapp ...

  8. 047-PHP数字前面补零,固定位数补0

    <?php #PHP 数字前面补零 固定位数补0 $num=128; $num=str_pad($num,8,"0",STR_PAD_LEFT); echo $num; // ...

  9. 在Ubuntu下搭建Android开发环境(AndroidStudio)

    在ubuntu下搭建Android开发环境 本教程的开发环境的搭建有三个大步骤:安装Java jdk,安装Android studio,安装sdk 笔者搭建环境的时候用的是Ubuntu18.04 1. ...

  10. IISHelper操作iis

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...