CodeIgniter-라이브러리

CodeIgniter 프레임 워크의 필수 부분은 라이브러리입니다. 이는 애플리케이션 개발 속도를 간접적으로 증가시키는 풍부한 라이브러리 세트를 제공합니다. 시스템 라이브러리는 시스템 / 라이브러리에 있습니다. 우리가해야 할 일은 우리가 사용할 라이브러리를로드하는 것입니다. 라이브러리는 아래와 같이로드 할 수 있습니다.

$this->load->library('class name');

어디 class name로드하려는 라이브러리의 이름입니다. 여러 라이브러리를로드하려면 배열을 인수로 전달하면됩니다.library() 아래 표시된 기능-

$this->load->library(array('email', 'table'));

도서관 수업

라이브러리 클래스는 system/libraries. 각 클래스에는 개발 작업을 단순화하는 다양한 기능이 있습니다. 다음 표는 라이브러리 클래스의 이름과 설명을 보여줍니다.

SN 도서관 클래스 및 설명
1

Benchmarking Class

벤치마킹 클래스는 항상 활성화되어 있으므로 두 표시된 지점 간의 시간 차이를 계산할 수 있습니다.

2

Caching Class

이 클래스는 페이지를 캐시하여 페이지 속도에 빠르게 액세스합니다.

Calendaring Class

이 클래스를 사용하여 달력을 동적으로 만들 수 있습니다.

4

Shopping Cart Class

이 클래스를 사용하여 장바구니에서 항목을 추가하거나 제거 할 수 있습니다. 항목은 세션에 저장되며 사용자가 사이트를 탐색 할 때까지 활성 상태로 유지됩니다.

5

Config Class

이 클래스를 사용하여 구성 기본 설정을 검색 할 수 있습니다. 이 클래스는 자동으로 초기화됩니다.

6

Email Class

이 클래스는 이메일 보내기 또는 답장과 같은 이메일 관련 기능을 제공합니다.

7

Encryption Class

이 클래스는 양방향 데이터 암호화 기능을 제공합니다.

8

File Uploading Class

이 클래스는 파일 업로드와 관련된 기능을 제공합니다. 업로드 할 파일 유형, 파일 크기 등과 같은 다양한 환경 설정을 지정할 수 있습니다.

9

Form Validation Class

이 클래스는 양식의 유효성을 검사하는 다양한 기능을 제공합니다.

10

FTP Class

이 클래스는 서버 제거를위한 파일 전송, 서버에서 파일 이동, 이름 변경 또는 삭제와 같은 다양한 FTP 관련 기능을 제공합니다.

11

Image Manipulation Class

크기 조정, 썸네일 생성, 자르기, 회전, 워터 마킹과 같은 이미지 조작은이 클래스의 도움으로 수행 할 수 있습니다.

12

Input Class

이 클래스는 보안상의 이유로 입력 데이터를 전처리합니다.

13

Language Class

이 클래스는 국제화에 사용됩니다.

14

Loader Class

이 클래스는 파일보기, 드라이버, 도우미, 모델 등과 같은 요소를로드합니다.

15

Migrations Class

이 클래스는 데이터베이스 마이그레이션과 관련된 기능을 제공합니다.

16

Output Class

이 클래스는 출력을 브라우저로 보내고 해당 웹 페이지를 캐시합니다.

17

Pagination Class

이 클래스는 웹 페이지에 페이지 매김 기능을 추가합니다.

18

Template Parser Class

템플릿 파서 클래스는 뷰 파일에 포함 된 의사 변수에 대한 간단한 텍스트 대체를 수행 할 수 있습니다. 간단한 변수 또는 변수 태그 쌍을 구문 분석 할 수 있습니다.

19

Security Class

이 클래스는 XSS 필터링, CSRF 등과 같은 보안 관련 기능을 포함합니다.

20

Session Library

이 클래스는 애플리케이션 세션을 유지하는 기능을 제공합니다.

21

HTML Table

이 클래스는 배열 또는 데이터베이스 결과에서 HTML 테이블을 자동 생성하는 데 사용됩니다.

22

Trackback Class

트랙백 클래스는 트랙백 데이터를주고받을 수있는 기능을 제공합니다.

23

Typography Class

Typography 클래스는 텍스트 서식을 지정하는 데 도움이되는 메서드를 제공합니다.

24

Unit Testing Class

이 클래스는 애플리케이션을 단위 테스트하고 결과를 생성하는 기능을 제공합니다.

25

URI Class

URI 클래스는 URI 문자열에서 정보를 검색하는 데 도움이되는 메서드를 제공합니다. URI 라우팅을 사용하는 경우 다시 라우팅 된 세그먼트에 대한 정보도 검색 할 수 있습니다.

26

User Agent Class

사용자 에이전트 클래스는 사이트를 방문하는 브라우저, 모바일 장치 또는 로봇에 대한 정보를 식별하는 데 도움이되는 기능을 제공합니다. 또한 언어 및 지원되는 문자 집합 정보뿐만 아니라 참조 자 정보를 얻을 수 있습니다.

27

XML-RPC and XML-RPC Server Classes

CodeIgniter의 XML-RPC 클래스를 사용하면 다른 서버로 요청을 보내거나 요청을 받도록 자체 XML-RPC 서버를 설정할 수 있습니다.

28

Zip Encoding Class

이 클래스는 데이터의 zip 아카이브를 만드는 데 사용됩니다.

라이브러리 생성

CodeIgniter에는 풍부한 라이브러리 세트가 있습니다. system/libraries 폴더에 있지만 CodeIgniter는 시스템 라이브러리에 국한되지 않고 자신 만의 라이브러리를 만들 수 있습니다. application/libraries폴더. 세 가지 방법으로 라이브러리를 만들 수 있습니다.

  • 새 라이브러리 만들기
  • 네이티브 라이브러리 확장
  • 네이티브 라이브러리 교체

새 라이브러리 생성

새 라이브러리를 만드는 동안 다음 사항을 명심해야합니다.

  • 파일 이름은 Mylibrary.php와 같이 대문자로 시작해야합니다.
  • 클래스 이름은 대문자로 시작해야합니다 (예 : Mylibrary 클래스).
  • 클래스 이름과 파일 이름이 일치해야합니다.

Mylibrary.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
   
   class Mylibrary {
	
      public function some_function() {
      }
   }
	
/* End of file Mylibrary.php */

Loading the Custom Library

위의 라이브러리는 컨트롤러에서 다음 줄을 실행하여로드 할 수 있습니다.

$this->load->library(‘mylibrary’);

mylibrary는 라이브러리의 이름이며 대문자뿐만 아니라 소문자로도 쓸 수 있습니다. ".php"확장자가없는 라이브러리 이름을 사용하십시오. 라이브러리를로드 한 후 아래와 같이 해당 클래스의 함수를 호출 할 수도 있습니다.

$this->mylibrary->some_function();

네이티브 라이브러리 확장

때로는 CodeIgniter에서 제공하는 라이브러리에 고유 한 기능을 추가해야 할 수도 있습니다. CodeIgniter는 네이티브 라이브러리를 확장하고 고유 한 기능을 추가 할 수있는 기능을 제공합니다. 이를 위해서는 네이티브 라이브러리 클래스의 클래스를 확장해야합니다. 예를 들어 이메일 라이브러리를 확장하려면 아래와 같이 수행 할 수 있습니다.

Class MY_Email extends CI_Email { 
}

여기에서 위의 예에서 MY_Email 클래스는 네이티브 라이브러리의 이메일 클래스 CI_Email을 확장하고 있습니다. 이 라이브러리는 이메일 라이브러리를로드하는 표준 방법으로로드 할 수 있습니다. 위 코드를 My_Email.php 파일에 저장하십시오.

네이티브 라이브러리 교체

어떤 상황에서는 네이티브 라이브러리를 작동하는 방식으로 사용하지 않고 자신의 방식으로 교체하고 싶습니다. 이는 네이티브 라이브러리를 교체하여 수행 할 수 있습니다. 이를 달성하려면 네이티브 라이브러리에서 이름이 지정된 것과 동일한 클래스 이름을 지정하면됩니다. 예를 들어,Email class을 클릭 한 다음 아래 표시된 코드를 사용하십시오. 다음으로 파일 이름 저장Email.php 클래스 이름을 CI_Email.

Email.php

Class CI_Email { 
}