ci/core/CodeIgniter.php是ci框架的核心处理文件,其处理流程如下:

1 require了3个文件

BASEPATHcore/Common.phpcore/Compat.php
APPPATHconfig/constants.php

2 加载Benchmark,并打时间戳

3 加载Hooks,并调用钩子pre_system

4 加载Config、URI、Input和Language

5 加载并解析Router

6 加载并输出缓存Output

7 require系统controller

BASEPATHcore/Controller.php

8 定义get_instance()() 为 CI_Controller::get_instance()

9 require自定义的controller

APPPATHcore/MY_Controller.php

10 require路由解析后的controller

APPPATHcontroller/路由目录/路由class.php

11 调用钩子pre_controller

12 创建controller

13 调用钩子post_controller_constructor

14 调用controller的action方法

15 调用钩子post_controller

16 渲染输出

17 调用钩子post_system

18 关闭db

转载于:https://blog.51cto.com/shige/1609693

ci源码解析之CodeIgniter.php相关推荐

  1. php实现推广海报,php微信推广海报PHP CodeIgniter框架源码解析

    PHP CodeIgniter框架源码解析 1.index.php :入口文件 |-->define('ENVIRONMENT') |主要用于设置errors日志输出级别 |-->$sys ...

  2. Kubernetes学习笔记之Calico CNI Plugin源码解析(二)

    女主宣言 今天小编继续为大家分享Kubernetes Calico CNI Plugin学习笔记,希望能对大家有所帮助. PS:丰富的一线技术.多元化的表现形式,尽在"360云计算" ...

  3. openmp官方源码_Faiss 源码解析

    Faiss 源码解析 faiss 是 facebook 开源的一个专门用于做高维向量的相似性搜索的库,有 c++ 和 python 的接口:目前项目地址在 https://github.com/fac ...

  4. TSDF算法原理及源码解析

    1. 先看效果 参考源码: https://github.com/andyzeng/tsdf-fusion-python 从图中可以看出,tsdf算法的重建效果还是不错的.该算法是很多牛掰3D重建算法 ...

  5. CGLIB 动态代理用例及源码解析

    CGLIB 动态代理 参考链接:https://blog.csdn.net/yhl_jxy/article/details/80633194 参考链接:https://www.jianshu.com/ ...

  6. JDK源码解析——Object的hashCode方法

    目录 前言 说明 一.源码目录结构 (1).JDK目录 (2).hotspot目录 二.基础知识 (1).Object Header(对象头) (2).Lock(锁) 1. 无锁 => 偏向锁 ...

  7. Flink JDBCSink使用及源码解析

    以下所有都是基于Flink 1.12.0版本 Flink JDBCSink的使用 flink提供了JDBCSink方便我们写入数据库,以下是使用案例: pom依赖 需要引入flink-connecto ...

  8. 谷歌BERT预训练源码解析(二):模型构建

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_39470744/arti ...

  9. 谷歌BERT预训练源码解析(三):训练过程

    目录 前言 源码解析 主函数 自定义模型 遮蔽词预测 下一句预测 规范化数据集 前言 本部分介绍BERT训练过程,BERT模型训练过程是在自己的TPU上进行的,这部分我没做过研究所以不做深入探讨.BE ...

  10. 谷歌BERT预训练源码解析(一):训练数据生成

    目录 预训练源码结构简介 输入输出 源码解析 参数 主函数 创建训练实例 下一句预测&实例生成 随机遮蔽 输出 结果一览 预训练源码结构简介 关于BERT,简单来说,它是一个基于Transfo ...

最新文章

  1. 微信小程序 html css xml,微信小程序 使用towxml解析html流程及踩坑记录
  2. chrome console 调试xpath
  3. SQL注入-二阶注入(十)
  4. 使用 dotnet core 和 Azure PaaS服务进行devOps开发(Web API 实例)
  5. 4.1.2电路交换、报文交换与分组交换
  6. (pytorch-深度学习)通过时间反向传播
  7. linux c 编程手册,Linux C/C++编程手册查阅方法
  8. Odoo10参考系列--翻译模块
  9. 防仿百度图片背景色php,基于jQuery实现仿百度首页换肤背景图片切换代码_jquery...
  10. [Alpha阶段]第二次Scrum Meeting
  11. 系统学习深度学习(二十二)--CNN经典模型总结
  12. [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket错误解决方法总结
  13. 手机android系统锁了怎么解,安卓手机解锁图案忘了怎么办?手机解锁密码忘了的解决办法...
  14. 【云原生 | Envoy 系列】--Envoy Http Ingress,Egress,front Proxy静态配置
  15. 基于微信小程序的游戏账号交易小程序
  16. ESIM模型的“全能版”!网易易盾实验室研究员解读HIM混合推理模型
  17. 仓储模式和传统三层架构多数据库实现
  18. rdkit安装指南-常见问题解决(rdkit找不到包、下载时加载0%)
  19. 给寸照换底色(抠头发)
  20. 论文阅读笔记1:EKT: Exercise-aware Knowledge Tracing for Student Performance Prediction

热门文章

  1. OJ-1:时钟问题【九度1553】
  2. HDU 1527 取石子游戏
  3. DDM:剪贴板处理处罚及截取屏幕
  4. 汇编实现: C库常见函数,串操作指令作用
  5. DeBruijin HDU - 2894(????????)
  6. 【整理分享1】PHP中exit()与die()的区别
  7. python内置函数print输出到文件,实现日志记录的功能
  8. linux的基本的命令行操作
  9. mahout推荐15-在hadoop上运行MapReduce
  10. 评测网站的十个指标!