This time I will bring you php frameworkDetailed explanation of the CodeIgniter database configuration steps, what are the precautions for php framework CodeIgniter database configuration, the following is a practical case, let's take a look.
CodeIgniter, referred to as CI, is one of the most popular PHP MVC frameworks. I will write a series of practical experiences from actual project use. Different from other theoretical articles, I will attach practical processes and codes.
This article is about configuring multiple databases. The usage scenario is clustering, distributed, and database read-write separation. Among multiple master-slave backup servers, only one is a read-write database, and the others are read-only databases.
Tools/Environment:
php development environment
CodeIgniter
##Method/Steps :
Configure one more database source in config/database.php. The default is localhost or IP. Writedb is a readable and writable database. Since the written Master-slave mutual backup requires IP remote calling. My configuration is:$active_group = 'default'; $active_record = TRUE; $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'default_username'; $db['default']['password'] = 'default_password'; $db['default']['database'] = 'default_dbname'; $db['default']['dbdriver'] = 'mysql'; $db['default']['dbprefix'] = ''; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = FALSE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ''; $db['default']['char_set'] = 'utf8'; $db['default']['dbcollat'] = 'utf8_general_ci'; $db['default']['swap_pre'] = ''; $db['default']['autoinit'] = TRUE; $db['default']['stricton'] = FALSE; $db['writedb']['hostname'] = '202.187.194.160'; $db['writedb']['username'] = 'writedb_name'; $db['writedb']['password'] = 'writedb_password'; $db['writedb']['database'] = 'writedb_db'; $db['writedb']['dbdriver'] = 'mysql'; $db['writedb']['dbprefix'] = ''; $db['writedb']['pconnect'] = TRUE; $db['writedb']['db_debug'] = TRUE; $db['writedb']['cache_on'] = FALSE; $db['writedb']['cachedir'] = ''; $db['writedb']['char_set'] = 'utf8'; $db['writedb']['char_names'] = 'utf8'; $db['writedb']['dbcollat'] = 'utf8_general_ci'; $db['writedb']['swap_pre'] = ''; $db['writedb']['autoinit'] = TRUE; $db['writedb']['stricton'] = FALSE;
<?php class Feedbackmodel extends CI_Model { function construct() { parent::construct (); $this->db = $this->load->database ('default',true); $this->writedb = $this->load->database ('writedb',true); } public function add($data) { $this->writedb->insert('feedback',$data); if($this->writedb->affected_rows() == 1){ return true; } return false ; } } ?>
The call of the controller is the same as the ordinary one. Just introduce the Model. I Example:
<?php class Feedback extends CI_Controller { function construct(){ parent::construct(); } function index(){ $this->load->model('feedbackmodel'); $this->load->helper('url'); $data['name'] = "feedback"; $this->load->view('feedbackview',$data); } } ?>
How to use Thinkphp5 uploadify to implement file upload
How to implement ADODB transaction processing in PHP
The above is the detailed content of Detailed explanation of PHP framework CodeIgniter database configuration steps. For more information, please follow other related articles on the PHP Chinese website!