처음부터 차근차근
Core 확장하기 본문
core
core란 framework의 기본 로직이다.
보통 framework를 사용해서 개발을 할 때 framework에서 제공하는 기본 환경에 나만의 코드를 만들어서 확장시키는데 이때 framework에서 제공하는 기본 로직을 core라고 생각하면 된다.
core 파일 보기
system / core 디렉토리 안을 보면 여러 개의 파일이 있는데 이 파일들이 codeigniter가 동작할 때 로드되는 core 파일들이다.
core 확장하는 방법
core 자체를 수정하면 나중에 codeigniter가 버전 업되면 문제가 생길 수 있다.
이 문제가 일어나지 않게 하기 위해 codeigniter에서 core을 확장하는 방법을 2가지 제공한다.
- hook 이용하는 방법
- 상속을 이용하는 방법
이 중 상속을 이용하여 core을 확장하는 방법을 알아볼 것이다.
상속을 이용한 core 파일 확장
core 파일을 확장하려면 확장하고 싶은 파일을 선택하고 그 파일이름 앞에 'MY_'를 붙인 새로운 이름으로
application / core
안에 새로운 파일을 만든다.
그리고 새로만든 core 파일을 사용하면 된다.
예시 )
Controller.php 파일을 확장하고 싶으면 MY_Controller.php 파일을 application / core 안에 생성한다.
MY_Controller.php 파일 코드 예시
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class MY_Controller extends CI_Controller {
function __construct() {
parent::__construct();
}
// 공통되는 코드
}
?>
그리고 이 controller를 CI_Controller 대신 상속시켜준다.
class Admin extends CI_Controller
-->
class Admin extends MY_Controller
Admin 클래스는 CI_Controller을 상속받은 MY_Controller을 상속받는다.
그리고 실행해보면 아주 잘되는 것을 확인할 수 있다.
파일 명명 규칙 변경하는 법
core 확장 파일 명명 규칙은 application / config / config.php 안에 있다.
$config['subclass_prefix'] = 'MY_';
core 확장 파일 이름 앞에 'MY_'말고 다른 이름을 붙이고 싶으면 위의 코드에 'MY_' 대신 다른 이름을 넣어주면 된다.
출처 : 'Codeigniter - 생활코딩' 변형 및 요약
'Framework > CodeIgniter' 카테고리의 다른 글
Codeigniter form 검증 한글 번역하기 (0) | 2021.11.26 |
---|---|
Session과 login, logout구현 (0) | 2021.11.12 |
CKEditor (0) | 2021.11.03 |
파일 업로드 (0) | 2021.11.02 |
로그 (0) | 2021.10.26 |