CodeIgniter中autoload('database')源码部分
来源:互联网 发布:沪江网校雅思 知乎 编辑:程序博客网 时间:2024/06/05 14:55
群里有人问,为什么CI配置文件中autoload的database在libraries中,但是libraries里又没有这个文件,其实看看源代码自然就知道了,这就是开源的好处之一。如果你说你找不到,那下面我帮你找。
找到下面的文件
system/core/Loader.php
大约在1029行开始的那个方法,截取部分
// Load librariesif (isset($autoload['libraries']) AND count($autoload['libraries']) > 0){// Load the database driver.if (in_array('database', $autoload['libraries'])){$this->database();$autoload['libraries'] = array_diff($autoload['libraries'], array('database'));}// Load all other librariesforeach ($autoload['libraries'] as $item){$this->library($item);}}
如果是 database,则会调用 $this->database(); 这个方法,下面再看下这个方法
public function database($params = '', $return = FALSE, $active_record = NULL){// Grab the super object$CI =& get_instance();// Do we even need to load the database class?if (class_exists('CI_DB') AND $return == FALSE AND $active_record == NULL AND isset($CI->db) AND is_object($CI->db)){return FALSE;}require_once(BASEPATH.'database/DB.php');if ($return === TRUE){return DB($params, $active_record);}// Initialize the db variable. Needed to prevent// reference errors with some configurations$CI->db = '';// Load the DB class$CI->db =& DB($params, $active_record);}
看到了吧,知道了吧。不要说找不到,如果你还找不到,证明你还没理清逻辑。慢慢来...
- CodeIgniter中autoload('database')源码部分
- CodeIgniter Database
- ActiveSupport autoload源码分析
- Codeigniter中禁止A Database Error Occurred错误提示
- Codeigniter中禁止A Database Error Occurred错误提示
- Codeigniter Database Driver 杂谈
- php 中autoload机制
- CodeIgniter部分个人理解
- PHP中autoload的使用方法
- php中spl_autoload_register和autoload
- codeigniter源码分析
- CodeIgniter的源码解读
- codeigniter源码分析-核心文件CodeIgniter.php
- CodeIgniter源码分析之CodeIgniter.php
- CodeIgniter源码分析之CodeIgniter.php
- CodeIgniter源码分析之CodeIgniter.php
- Extjs4源码解释TreeStore的autoLoad无效
- Codeigniter中禁止A Database Error Occurred及A PHP Error was encountered错误提示的方法
- Oracle卸载后服务删除的问题
- 深入Linux内核架构第三章阅读完成
- mvn 下载jar源代码
- asp.net 实现文件缓存依赖,数据库缓存依赖
- java获取操作系统相关信息
- CodeIgniter中autoload('database')源码部分
- 进程解锁
- CSDN博客代码显示乱码的原因
- 可重入函数与不可重入函数
- 年末的简单回想
- 俞敏洪老师在新东方20期新教师培训会议上的讲话
- 评估了Emacs下支持intellisense的几个方案
- xmlrpc for php 遇到的问题及解决方法
- C/C++编译详解