> php教程 > PHP开发 > CodeIgniter 연구 노트 Item8--CI 보조 기능

CodeIgniter 연구 노트 Item8--CI 보조 기능

黄舟
풀어 주다: 2016-12-29 10:31:53
원래의
1246명이 탐색했습니다.

보조 기능은 특정 작업을 완료하는 데 도움이 되는 기능입니다. 각 도우미 함수 파일은 단지 함수 모음입니다. 예를 들어 URL 도우미는 링크를 만드는 데 도움이 되고, 양식 도우미는 양식을 만드는 데 도움이 되며, 텍스트 도우미는 일련의 형식화된 출력 방법을 제공하고, 쿠키 도우미는 COOKIE를 설정하고 읽는 데 도움이 되고, 파일 도우미는 파일 처리에 도움이 됩니다. 다른 부분과 달리 보조 기능은 클래스에 구현되지 않습니다. 이는 단순한 절차적 처리 기능일 뿐입니다. 각 도우미 함수는 특정 작업을 처리하며 다른 함수에 의존할 필요가 없습니다.

CodeIgniter는 기본적으로 보조 기능 파일을 로드하지 않으므로, 보조 기능을 사용하려면 먼저 로드해야 합니다. 일단 로드되면 도우미 기능을 전역적으로 사용할 수 있습니다. 헬퍼 함수 파일은 일반적으로 system/helpers
또는 application/helpers 폴더에 저장됩니다. CodeIgniter는 먼저 application/helpers
에서 해당 도우미 함수 파일을 검색합니다. 디렉터리가 존재하지 않거나 해당 디렉터리에 해당 도우미 함수 파일이 없으면 CI는 system/helpers 아래에 도우미 함수 파일을 로드합니다.

도우미 함수를 로드하는 것은 매우 간단합니다.

[code]$this->load->helper('name');
로그인 후 복사

name은 도우미 함수 파일의 이름입니다(.php 접미사 및 "helper" 부분 제외). ).

예를 들어 파일 이름이 url_helper.php
인 URL 도우미를 로드하려면 다음 문을 사용합니다.

[code]$this->load->helper('url');
로그인 후 복사

한 번 후에 사용하려는 보조 함수 파일을 로드한 후 표준 함수 호출 방법을 사용하여 내부 함수를 사용할 수 있습니다.

예를 들어, 앵커() 함수를 사용하여 링크를 생성하려면 보기 파일에서 다음을 수행할 수 있습니다.

[code]<?php echo anchor(&#39;blog/comments&#39;, &#39;Click Here&#39;);?>
로그인 후 복사

“여기를 클릭하세요”는 링크 이름이고 "blog/comments"는 링크의 URI입니다.

원본 도우미를 "확장"하려면 application/helpers/ 디렉터리에 새 도우미를 만들 수 있습니다. 새 도우미의 이름은 "확장" 이름 앞에 추가됩니다. 도우미. MY_, 여기의 접두사는 구성 가능합니다. 사용자 정의 접두사를 설정하려면 application/config/config.php
파일을 열고 다음 항목을 찾으세요:

[code]$config[&#39;subclass_prefix&#39;] = &#39;MY_&#39;;
로그인 후 복사

원본 도우미에 몇 가지 새로운 기능을 추가하려는 경우(예: 하나 또는 두 개의 새 메서드 추가 또는 메서드 수정) 자체 도우미를 다시 작성할 가치가 없습니다. 이 경우 기존 도우미를 "확장"하는 것이 좋습니다. 여기서 "확장"이라는 단어는 그다지 적절하지 않습니다. 왜냐하면 Helper의 메서드는 절차적이고 개별적이며 전통적인 언어 환경에서는 "확장"될 수 없기 때문입니다. 그러나 CodeIgniter에서는 도우미 메서드를 추가하거나 수정할 수 있습니다.

예를 들어 기존 로컬 배열 도우미를 확장하려면 application/helpers/MY_array_helper.php
파일을 생성하고 해당 메서드 중 일부를 추가하거나 재정의해야 합니다.

[code]// any_in_array() is not in the Array Helper, so it defines a new function
function any_in_array($needle, $haystack)
{
    $needle = (is_array($needle)) ? $needle : array($needle);
    foreach ($needle as $item)
    {
        if (in_array($item, $haystack))
        {
            return TRUE;
        }
    }
    return FALSE;
}
// random_element() is included in Array Helper, so it overrides the native function
function random_element($array)
{
    shuffle($array);
    return array_pop($array);
}
로그인 후 복사

위 내용은 CodeIgniter 학습 노트 Item8--CI 보조 기능 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿