位置: 编程技术 - 正文

CodeIgniter扩展核心类实例详解

编辑:rootadmin

推荐整理分享CodeIgniter扩展核心类实例详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了CodeIgniter扩展核心类的方法。分享给大家供大家参考,具体如下:

CI中对核心类、辅助类和函数的扩展是相当方便的,配置文件中指定了subclass_prefix扩展前缀,默认为MY_,扩展时需要以该配置为前缀,下面整理下扩展方式。

1、扩展核心类

核心类位于system/core下,其中大部分类会在初始化的时候自动加载。扩展核心类的方式有两种:替换核心类和继承核心类。

替换核心类

当application/core目录下存在与system/core同名的文件时会自动替换掉核心类。以Loader.php为例,当创建application/core/Loader.php后会自动加载该类,由于该类为系统核心类,所以,如果Loader.php未实现CI_Loader类中的方法则会报错,如:

替换核心类需要重写其中的所有方法,以免影响核心功能。但大部分时候并不需要重写整个核心,基本上只是增加某些方法,这个时候可以采取继承的方式。

CodeIgniter扩展核心类实例详解

继承核心类

继承核心类需要以subclass_prefix为前缀,如扩展Input类,需创建application/core/MY_Input.php,并且MY_Input需要继承CI_Input类,如:

2、扩展CI类库

system/libraries下实现了一些辅助类,当有需要扩展这些类时,和核心类的处理方式是一样的,只不过目录变成了application/libraries

3、扩展辅助函数

辅助函数存放于application/helpers目录下,辅助函数的“继承”方式与上面相同。因为CI的辅助函数都有使用function_exists来判断是否存在,所以也可以达到“重写”的目的。如在array中新增一个数组排序方法:

总的来说,可以对CI框架system目录下的大部分内容进行重写,灵活度很高,扩展也很方便。但有时候也需要注意一下,并不是扩展的越多就越好,确保CI实现不了的功能再去扩展。最后既然CI提供了扩展的功能,就不要直接去修改system下的内容了。

更多关于codeigniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》和《CI(CodeIgniter)框架进阶教程》

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

CodeIgniter辅助之第三方类库third_party用法分析 本文实例分析了CodeIgniter辅助之第三方类库third_party用法。分享给大家供大家参考,具体如下:third_party用来存放系统中引入的第三方类库,类库通常提

教你php如何实现验证码 验证码在表单实现越来越多了,但是用js的写的验证码,总觉得不方便,所以学习了下php实现的验证码。好吧,其实是没有事情干,但是又不想浪费时间

CI(CodeIgniter)模型用法实例分析 本文实例分析了CI(CodeIgniter)模型用法。分享给大家供大家参考,具体如下:MVC中的业务逻辑放在控制器中或者模型里都是不合适的,所以这里对业务逻

标签: CodeIgniter扩展核心类实例详解

本文链接地址:https://www.jiuchutong.com/biancheng/288194.html 转载请保留说明!

上一篇:CodeIgniter视图使用注意事项

下一篇:教你php如何实现验证码(php zmq)

  • 自己房子出租发布信息
  • 房租租赁房产税由哪方缴纳
  • 信用减值损失与坏账准备关系
  • 工程附加税怎么计算
  • 税率为0的发票长啥样
  • 财务报表和信息的区别
  • 国际货运代理免税报表填写
  • 物业代收费:有关法律
  • 本月无凭证需要结转吗
  • 调整以前年度多计提的工资
  • 申请国家知识产权的条件
  • 公司没有收入没开发票
  • 企业转让专利技术需要交什么税
  • 工程成本哪些可以抵扣
  • etc发票一直不出来
  • 固定资产折旧在资产负债表属于什么
  • 软件许可协议是什么意思
  • 工会财务总结报告
  • 什么叫递延所得税费用?
  • 小企业补贴收入怎么做账
  • 房产税计税依据是含税还是不含税
  • 桃胶多少钱一斤正常
  • 内账进项税不设置怎么账务处理
  • 私营企业员工享受探亲假吗
  • 用自产的产品用于生产线
  • 保险赔款确认函
  • win10专业版问题
  • 松木山在哪
  • 企业受赠业务的法律规定
  • mac怎么不能升级系统
  • 牙痛怎么办怎么治疗
  • php fgets函数的用法
  • Symfony2 session用法实例分析
  • 外贸企业收到红字发票
  • 个人抬头有什么用
  • vue技术解密
  • face_recognition库采用了什么算法
  • 字节在互联网什么地位
  • vue destroyed销毁组件
  • lspv命令详解
  • 存货盘盈的账务处理入什么费用
  • 车票抵扣增值税在哪里申报
  • 银行的抵债资产会过到银行名下吗
  • 法人章两个字的怎么印
  • python np数组
  • 加油发票怎么报税
  • 增值税附表3
  • 公司股东和自然人的关系
  • 个税申报数据有误
  • 小微企业所得税税率
  • MySQL中create table as 与like的区别分析
  • 留抵进项税太多怎么办
  • 管理费用税金包括
  • 销售收入小于销售成本
  • 减免的残保金怎么做分录
  • 汽车属于固定资产类吗
  • 未完工工程如何验收
  • sql局部变量标识符
  • windows下安装nas
  • 谁编写了元素周期表
  • win8 无线网络连不上
  • vista正版怎么升级win7
  • Windows 2003作中转VPN服务器多路由共享上网的方法
  • Linux Container(LXC容器)的基本命令使用简介
  • win7系统安装教程不用u盘
  • Serv-U 构建个人FTP服务器图解
  • 家字取名男孩名字
  • linux系统怎么配置路由
  • win8无法关机一直转圈
  • win10账户登录闪退
  • win8.1系统怎么升级到win10
  • vue组件互相嵌套
  • js中top/parent/frame概述及案例应用
  • hashmap详细讲解
  • jquery可以实现哪些效果
  • js prototype constructor
  • bootstrap日期控件背景为白
  • 安卓的生命周期方法
  • 商标注册图形查询
  • 个体户刻公章需要备案吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设