일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 웹 프로그래밍
- 설정
- CodeIgniter
- mysql
- 옵션표
- php
- ajax
- 라이렌
- API
- javascript
- 안드로이드
- codeigniter3
- config
- jw player
- jquery
- rairen
- 영카트
- 코드이그나이터
- FCM
- Database
- MSsql
- function
- CI3
- APK
- 헬퍼
- 그누보드
- 함수
- html
- 후크
- phpDocumentor
Archives
- Today
- Total
프로그램 개발서
[PHP][코드이그나이터] 훅, 후크, 후킹 본문
안녕하세요?
코드이그나이터 훅에 대해서 조금 더 작성하려고 합니다.
일단 첫번째는 /application/config/config.php에서 훅을 사용할 수 있도록 설정을 변경해줍니다.
/*
|--------------------------------------------------------------------------
| Enable/Disable System Hooks
|--------------------------------------------------------------------------
|
| If you would like to use the 'hooks' feature you must enable it by
| setting this variable to TRUE (boolean). See the user guide for details.
|
*/
//$config['enable_hooks'] = FALSE;
$config['enable_hooks'] = TRUE;
2번째로는 /application/config/hooks.php에서 후크처리할 설정을 잡아줍니다.
/*
| pre_system 시스템 작동초기입니다.벤치마크와 후킹클래스들만 로드된 상태로서, 라우팅을 비롯한 어떤 다른 프로세스도 진행되지않은 상태입니다.
| pre_controller 컨트롤러가 호출되기 직전입니다. 모든 기반클래스(base classes), 라우팅 그리고 보안점검이 완료된 상태입니다.
| post_controller_constructor 컨트롤러가 인스턴스화 된 직후입니다.
즉 사용준비가 완료된 상태가 되겠죠.
하지만, 인스턴스화 된 후 메소드들이 호출되기 직전입니다.
| post_controller 컨트롤러가 완전히 수행된 직후입니다.
| display_override _display() 함수를 재정의 합니다.최종적으로 브라우저에 페이지를 전송할 때 사용됩니다.
이로서 당신만의 표시 방법( display methodology)을사용할 수 있습니다.
주의 : CI 부모객체(superobject)를 $this->CI =& get_instance() 로 호출하여 사용한 후에 최종데이터 작성은 $this->CI->output->get_output() 함수를 호출하여 할 수 있습니다.
| cache_override 출력라이브러리(Output Library) 에 있는 _display_cache() 함수 대신 당신의 스크립트를 호출할 수 있도록 해줍니다. 이로서 당신만의 캐시 표시 메커니즘(cache display mechanism)을 적용할 수 있습니다.
| post_system 최종 렌더링 페이지가 브라우저로 보내진후에 호출됩니다.
*/
/**
* filepath - 경로
* filename - 파일
* class - 클래스
* function - 함수
*/
$hook['pre_controller'] = array(
'filepath' => 'hooks',
'filename' => 'PreController.php',
'class' => 'calsss',
'function' => 'function',
);
2번 항목에서 설정을 잡아주었다면
3번째는 설정대로 /application/hooks/폴더 안에 파일을 만들어 줍니다.
// 설정에서 지정한 클래스명으로 클래스 생성
class Class extends CI_Controller{
// 설정에서 지정한 함수명으로 함수 생성
public function Function(){
}
}
이제 함수 안에서 처리될 코드를 작성하면 후크시스템이 완성됩니다.!
이것으로 훅에 대해 마치도록 하고
여러분에게도 도움이 되길 빌겠습니다.
반응형
'PHP' 카테고리의 다른 글
[코드이그나이터3] korean/core_lang.php 0.3 (0) | 2020.11.03 |
---|---|
[코드이그나이터] config/pagination.php (0) | 2020.05.20 |
[PHP][코드이그나이터] 환경설정(config.php) (0) | 2019.11.01 |
[PHP][TCPDF] HTML화면을 PDF로 보기 (0) | 2019.10.25 |
[PHP] 푸시 토큰 관리 (0) | 2019.09.23 |