Home > Backend Development > PHP Tutorial > A simple database traceback

A simple database traceback

WBOY
Release: 2016-07-29 09:11:23
Original
1104 people have browsed it

Introduction. I checked the code today and flew all the way to the database.

<span>1</span><span>$this->slave()->select('sina_user_id, sina_nickname, password')->from(self::Table_User_Info)</span>
Copy after login

Obviously the table .user_info has been determined here;

This file is not loaded->database();

As the name: slave() is from Library, trace slave(). Sure enough, the library name string is combined here,

<span>1</span><span>    public function slave($dbName = 'default')
</span><span>2</span>     { 
<span>3</span>     }
Copy after login

func. Inside load->database();

Check database() in loader; there is the following sentence,

<span>1</span><span><strong>require</strong>_once(BASEPATH.'database/DB.php');</span>
Copy after login

Find DB.php;

<span>1</span><span>    if ( ! defined('ENVIRONMENT') OR ! file_exists($file_path = BASEPATH.'config/'.ENVIRONMENT.'/database.php'))</span>
Copy after login

The introduction of multiple database attributes in this file, see core file analysis for details.

Finally found the location of database.php

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

Tracing the database is completed.

The above introduces a simple database tracing, including the require content. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template