·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> php网站开发 >> 一次简单的数据库追溯

一次简单的数据库追溯

作者:佚名      php网站开发编辑:admin      更新时间:2022-07-23

引子 .今天排查代码,一路飞,到数据库,

1 $this->slave()->select('sina_user_id, sina_nickname, passWord')->from(self::Table_User_Info)

显然到这里确定了表.user_info;

这个文件没有load->database();

顾名: slave()  是从库,追溯slave() 果然在这里组合了库名字符串,

1     public function slave($dbName = 'default')
2     { 
3     }

func 里面load->database();

查loader里的database();有下面这句,

1 require_once(BASEPATH.'database/DB.php');

找到DB.php;

1     if ( ! defined('ENVIRONMENT') OR ! file_exists($file_path = BASEPATH.'config/'.ENVIRONMENT.'/database.php'))

这个文件里面多个数据库属性的引入,详见核心文件分析.

终于找到了database.php 位置

 1 // Default DB Config
 2 $db['default_master']['hostname'] = 'localhost';
 3 $db['default_master']['username'] = 'admin';
 4 $db['default_master']['password'] = '12345678';
 5 $db['default_master']['database'] = ' ';
 6 $db['default_master']['port'] = 3306;
 7 $db['default_master']['dbdriver'] = 'MySQL';
 8 $db['default_master']['pconnect'] = FALSE;
 9 $db['default_master']['db_debug'] = TRUE;
10 $db['default_master']['cache_on'] = FALSE;
11 $db['default_master']['cachedir'] = '';
12 $db['default_master']['char_set'] = 'utf8';
13 $db['default_master']['dbcollat'] = 'utf8_general_ci';
14 $db['default_master']['swap_PRe'] = '';
15 $db['default_master']['autoinit'] = TRUE;
16 $db['default_master']['stricton'] = FALSE;

追溯数据库完毕.

 

注意点:  APPPATH 和 BASEPATH  ,位置不一定,同名文件也比较多,一定不要追溯到错误的文件.