처음부터 차근차근

Helper 본문

Framework/CodeIgniter

Helper

_soyoung 2021. 10. 13. 21:11
반응형
Helper란

 

helper = help(도와주다) + ~er(~한 존재)

즉, helper = 도와주는 존재

 

helper란 사용자들이 자주 사용하는 메서드를 미리 만들어 놓은 것이다.

미리 만들어놓은 helper를 가져다 쓰기만 하면되기 때문에 편리하다.

 

 

 

 

그럼 helper은 library인가?

 

helper는 라이브러리인가 아닌가에 대해서 의견이 분분하다.

helper가 라이브러리의 일종이라 하는 사람도 있고,

다른 것이라고 하는 사람도 있다.

 

필자의 생각 :  둘 중 아무렇게 불러도 상관없는데,

엄연히 말하면 helper는 library가 아니라고 생각한다.

library는 class를 사용하여 객체지향 방식으로 만드는데,

helper는 class를 사용하지 않은 독립적인 함수이다.

그렇기 때문에 library와는 별개인 함수 모음이라고 생각한다.

 

 

 

 

helper 사용하는 법

 

helper을 사용하는 방법에는 두 가지가 있다.

 

  1. 직접 로드하는 방법
  2. autoload.php 사용하는 방법

 

1. 직접 로드하는 방법

helper을 사용하려면 사용하고자 하는 helper을 로드해야한다.

$this->load->helper('helper이름');

두 개 이상의 helper를 로드하려면 아래와 같이 입력하면 된다.

$this->load->helper(array('helper이름', 'helper이름'));

이렇게 로드를 하면 로드 코드 기준으로 아래에 있는 파일들은 로드한 helper을 쓸 수 있다.

ex)

괄호가 닫히기전 파일들 즉, header, sideMenu, detail, footer은 모두 text helper을 사용할 수 있다. 

 

 

2. autoload.php 사용하는 방법

application > config > autoload.php로 가서 아래의 코드를 

$autoload['helper'] = array();

아래처럼 바꿔주면 된다.

$autoload['helper'] = array('helper이름', 'helper이름');

이렇게 하면 따로 로드하지 않아도 helper를 사용할 수 있다.

 

 

 

 

helper의 종류

 

helper의 종류는 아래와 같다.(CodeIgniter4 기준)

 

  • 배열(Array)
  • Cookie 헬퍼
  • Date 헬퍼
  • FileSystem 헬퍼
  • Form 헬퍼
  • HTML 헬퍼
  • inflector(어형변화) 헬퍼
  • Number 헬퍼
  • Security 헬퍼
  • Test 헬퍼
  • Text 헬퍼
  • URL 헬퍼
  • XML 헬퍼

헬퍼에 대한 자세한 내용은 사이트에 들어가면 잘 정리되어 있다.

 

http://ci4doc.cikorea.net/helpers/index.html

 

헬퍼(Helper) — CodeIgniter 4.1.4 documentation

© Copyright 2019-2021 CodeIgniter Foundation Last updated on Sep 27, 2021.

ci4doc.cikorea.net

CodeIgniter 한국 사용자 포럼 <CodeIgniter4 사용자 가이드 - helper>이다.

 

 

 

 

사용자 정의 helper

 

helper는 가져다 쓸 수 도 있지만, 개발자가 직접 정의해서 사용할 수도 있다.

 

<helper 만드는 방법>

 

1. helpers폴더 아래에 '헬퍼이름_helper.php'의 이름으로 helper 파일을 새로 만든다.

 

2. if문 안에다가 helper 함수를 만든다.

helper함수 예시

function_exists() 메서드는 괄호 안의 이름을 가진 함수가 존재하는지 확인하는 함수다.

함수가 존재한다면 true를 반환하고, 존재하지 않는다면 false를 반환한다.

if(!function_exists('ksy')) 를 하는 이유는 helper함수는 일종의 전역 함수이기 때문에 똑같은 이름의 함수가 있는지 확인하기 위해서 한다.

만약 같은 이름의 함수가 존재한다면 원하는 값이 나오지 않거나 오류가 날 수 있기 때문이다.

 

3. 만든 helper함수를 로드한다.

helper 파일 이름에서 _helper은 뺀다.

 

4. 사용한다.

 

 

 

 

 

 

 

출처 : 'CodeIgniter - 생활코딩' 변형 및 요약

반응형

'Framework > CodeIgniter' 카테고리의 다른 글

CodeIgniter 설정  (0) 2021.10.25
Form Validation  (0) 2021.10.17
URI 매핑 변경하기  (0) 2021.10.12
Bootstrap  (0) 2021.10.10
Model과 View, 데이터베이스 연동  (0) 2021.10.09
Comments