이번에는 php 프레임워크CodeIgniter 데이터베이스 구성 단계에 대한 자세한 설명을 가져왔습니다. php 프레임워크 CodeIgniter 데이터베이스 구성에 대한 주의 사항은 무엇입니까? 다음은 실제 사례입니다. 살펴보겠습니다.
CI로 약칭되는 CodeIgniter는 가장 널리 사용되는 PHP MVC 프레임워크 중 하나입니다. 실제 프로젝트 사용에서 얻은 실제 경험을 시리즈로 작성하고 실제 프로세스와 코드를 첨부하겠습니다.
이 기사는 여러 데이터베이스 구성에 대한 것입니다. 사용 시나리오는 클러스터링, 분산 및 데이터베이스 읽기-쓰기 분리입니다. 여러 마스터-슬레이브 백업 서버 중 하나만 읽기-쓰기 데이터베이스이고 나머지는 읽기 전용 데이터베이스입니다. .
도구/환경:
php 개발 환경
CodeIgniter
방법/단계:
기본값은 localhost일 수 있습니다. IP, writedb는 읽기 및 쓰기가 가능한 데이터베이스이므로 마스터-슬레이브 및 상호 백업을 위해 IP를 통해 원격으로 쓰기를 호출해야 하므로 구성은 다음과 같습니다.
$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;
M(모델) 필수 모델은 두 개의 데이터 소스로 구성됩니다. 물론 읽기용으로만 구성하면 됩니다. 물론 쓰기용으로만 구성하면 별도로 쓰기용으로 구성할 수도 있습니다.
피드백 model.php의 예:
<?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 ; } } ?>
C(Controller)Controller는 평소와 동일합니다. 모델을 소개하세요. 내 예:
<?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); } } ?>
이 기사의 사례를 읽으신 것 같습니다. 방법에 대해 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 다른 관련 기사에 주목하세요!
추천 도서:
Thinkphp5+uploadify를 사용하여 파일 업로드를 구현하는 방법
위 내용은 PHP 프레임워크 CodeIgniter 데이터베이스 구성 단계에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!