zoukankan      html  css  js  c++  java
  • 一次简单的数据库追溯

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

    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  ,位置不一定,同名文件也比较多,一定不要追溯到错误的文件.

  • 相关阅读:
    前端获取当前路径
    pycharm快捷键
    权限(二)
    权限(1)
    cookie,session,用户认证组件
    装饰器
    admin组件的使用
    thinkphp5.0独立配置
    thinkphp5.0读取配置
    thinkphp5.0配置加载
  • 原文地址:https://www.cnblogs.com/liuyuxing/p/4997126.html
Copyright © 2011-2022 走看看