CI框架源码分析
2016-03-09 22:10
489 查看
这几天,把ci源码又看了一遍,于是有了新的收获。明白了在application目录下core文件夹的作用,就是用来写ci核心文件的扩展的,
而且需要在配置文件中添加类前缀MY_。
CI框架整体是但入口文件,入口文件是Index.php在该文件中定义了一些系统变量,比如BASEPATH和
APPPATH等,最后加载ci框架的核心文件CodeIgniter文件,该文件位于system文件夹下的core文件夹下,此文件夹是ci的核心文件,包括了
controller,model,router,config等文件,codeigniter文件中会对这些核心文件进行调用。
在核心w文件controller中,又把这些文件作为自己的属性调用,就有了我们在控制器中看到的$this->load形式的调用,还有$this->config形式的调用。
核心文件load是用来加载各种文件的,像model文件,view层的文件。
在核心文件中还有一个benchmark类,用来计算脚本执行的时间和所占用的内存。以前没有注意到,现在感觉特别好用!
其他的像helper和libraries下的一些文件了。
实际这就是mvc的设计模式了,也是php框架的通用模式,只是ci框架算是比较轻量级的框架而已。
在看ci框架的时候看到一个好用的函数array_map,就是统一对数组进行操作,说起如何看源代码,还是从网上汲取了很多的经验:
比如:框架的效率,安全,以及框架所用到的设计模式等,获益匪浅。
而且需要在配置文件中添加类前缀MY_。
CI框架整体是但入口文件,入口文件是Index.php在该文件中定义了一些系统变量,比如BASEPATH和
APPPATH等,最后加载ci框架的核心文件CodeIgniter文件,该文件位于system文件夹下的core文件夹下,此文件夹是ci的核心文件,包括了
controller,model,router,config等文件,codeigniter文件中会对这些核心文件进行调用。
在核心w文件controller中,又把这些文件作为自己的属性调用,就有了我们在控制器中看到的$this->load形式的调用,还有$this->config形式的调用。
核心文件load是用来加载各种文件的,像model文件,view层的文件。
在核心文件中还有一个benchmark类,用来计算脚本执行的时间和所占用的内存。以前没有注意到,现在感觉特别好用!
其他的像helper和libraries下的一些文件了。
实际这就是mvc的设计模式了,也是php框架的通用模式,只是ci框架算是比较轻量级的框架而已。
在看ci框架的时候看到一个好用的函数array_map,就是统一对数组进行操作,说起如何看源代码,还是从网上汲取了很多的经验:
比如:框架的效率,安全,以及框架所用到的设计模式等,获益匪浅。
相关文章推荐
- Java类型的程序员成长
- linux下uniq和tee命令
- IOS传值方法-属性正向传值
- js库Modernizr的介绍和使用
- 手动安装python包
- android 补间动画和Animation
- Spring 定时器的使用
- 数据结构--栈
- 网络编程_TCP_Socket通信原理_多个客户端_聊天室原理JAVA189-190
- 第1周项目HOLLE WORLD
- Demo12SimpleAdapter
- 《机器学习实战》——无监督学习
- 错误票据
- Android中Serializable和Parcelable序列化对象
- 【spark】采用MultilayerPerceptron对MNIST的0-9数字进行识别
- DEV--chartcontrol绘制统计图
- BZOJ4199 NOI2015 品酒大会 题解&代码
- 那些年大家都在谈论的Android性能优化
- 更改包名问题
- iOS -TabBar