Учебники

CodeIgniter — Библиотеки

Важной частью платформы CodeIgniter являются ее библиотеки. Он предоставляет богатый набор библиотек, которые косвенно увеличивают скорость разработки приложения. Системная библиотека находится в системе / библиотеки. Все, что нам нужно сделать, это загрузить библиотеку, которую мы хотим использовать. Библиотека может быть загружена, как показано ниже —

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

Где имя класса — это имя библиотеки, которую мы хотим загрузить. Если мы хотим загрузить несколько библиотек, тогда мы можем просто передать массив в качестве аргумента функции library (), как показано ниже —

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

Библиотечные классы

Классы библиотеки расположены в системе / библиотеки . Каждый класс имеет различные функции для упрощения развивающей работы. В следующей таблице приведены названия библиотечного класса и его описание.

SN Библиотечный класс и описание
1

Класс бенчмаркинга

Класс бенчмаркинга всегда активен, что позволяет рассчитать разницу во времени между любыми двумя отмеченными точками.

2

Класс кеширования

Этот класс будет кэшировать страницы, чтобы быстро получить доступ к скорости страницы.

3

Класс календаря

Используя этот класс, вы можете динамически создавать календари.

4

Класс корзины покупок

Используя этот класс, вы можете добавить или удалить товар из корзины. Элементы сохраняются в сеансе и остаются активными, пока пользователь не просматривает сайт.

5

Config Class

С помощью этого класса можно получить настройки конфигурации. Этот класс инициализируется автоматически.

6

Класс электронной почты

Этот класс предоставляет функции, связанные с электронной почтой, такие как отправка или ответ на электронную почту.

7

Класс шифрования

Этот класс обеспечивает двустороннее шифрование данных.

8

Класс загрузки файлов

Этот класс предоставляет функции, связанные с загрузкой файлов. Вы можете установить различные параметры, такие как тип загружаемого файла, размер файлов и т. Д.

9

Класс проверки формы

Этот класс предоставляет различные функции для проверки формы.

10

Класс FTP

Этот класс предоставляет различные функции, связанные с FTP, такие как передача файлов для удаления сервера, перемещение, переименование или удаление файлов на сервере.

11

Класс манипулирования изображениями

С помощью этого класса можно выполнять манипуляции с изображением, такие как изменение размера, создание миниатюр, обрезка, поворот, создание водяных знаков.

12

Входной класс

Этот класс предварительно обрабатывает входные данные по соображениям безопасности.

13

Языковой класс

Этот класс используется для интернационализации.

14

Класс погрузчика

Этот класс загружает такие элементы, как Просмотр файлов, Драйверы, Помощники, Модели и т. Д.

15

Класс миграций

Этот класс предоставляет функции, связанные с миграцией базы данных.

16

Выходной класс

Этот класс отправляет вывод в браузер, а также кэширует эту веб-страницу.

17

Класс пагинации

Этот класс добавляет функции пагинации на веб-страницу.

18

Шаблон Parser Class

Template Parser Class может выполнять простую подстановку текста для псевдопеременных, содержащихся в ваших файлах просмотра. Он может анализировать простые переменные или пары переменных тегов.

19

Класс безопасности

Этот класс содержит функции безопасности, такие как XSS Filtering, CSRF и т. Д.

20

Библиотека сессий

Этот класс предоставляет функциональные возможности для поддержки сеанса вашего приложения.

21

HTML таблица

Этот класс используется для автоматической генерации таблиц HTML из результатов массива или базы данных.

22

Trackback Class

Класс Trackback предоставляет функции, которые позволяют отправлять и получать данные Trackback.

23

Типография Класс

Типографский класс предоставляет методы, которые помогают форматировать текст.

24

Класс модульного тестирования

Этот класс предоставляет функциональные возможности для модульного тестирования вашего приложения и генерации результата.

25

Класс URI

Класс URI предоставляет методы, которые помогают вам получать информацию из ваших строк URI. Если вы используете URI-маршрутизацию, вы также можете получить информацию о перенаправленных сегментах.

26

Класс агента пользователя

Класс User Agent Class предоставляет функции, которые помогают идентифицировать информацию о браузере, мобильном устройстве или роботе, посещающем ваш сайт. Кроме того, вы можете получить информацию о реферере, а также информацию о языке и поддерживаемых наборах символов.

27

Классы серверов XML-RPC и XML-RPC

Классы CodeIgniter XML-RPC позволяют отправлять запросы на другой сервер или настраивать собственный XML-RPC-сервер для приема запросов.

28

Класс Zip-кодирования

Этот класс используется для создания zip-архивов ваших данных.

Класс бенчмаркинга

Класс бенчмаркинга всегда активен, что позволяет рассчитать разницу во времени между любыми двумя отмеченными точками.

Класс кеширования

Этот класс будет кэшировать страницы, чтобы быстро получить доступ к скорости страницы.

Класс календаря

Используя этот класс, вы можете динамически создавать календари.

Класс корзины покупок

Используя этот класс, вы можете добавить или удалить товар из корзины. Элементы сохраняются в сеансе и остаются активными, пока пользователь не просматривает сайт.

Config Class

С помощью этого класса можно получить настройки конфигурации. Этот класс инициализируется автоматически.

Класс электронной почты

Этот класс предоставляет функции, связанные с электронной почтой, такие как отправка или ответ на электронную почту.

Класс шифрования

Этот класс обеспечивает двустороннее шифрование данных.

Класс загрузки файлов

Этот класс предоставляет функции, связанные с загрузкой файлов. Вы можете установить различные параметры, такие как тип загружаемого файла, размер файлов и т. Д.

Класс проверки формы

Этот класс предоставляет различные функции для проверки формы.

Класс FTP

Этот класс предоставляет различные функции, связанные с FTP, такие как передача файлов для удаления сервера, перемещение, переименование или удаление файлов на сервере.

Класс манипулирования изображениями

С помощью этого класса можно выполнять манипуляции с изображением, такие как изменение размера, создание миниатюр, обрезка, поворот, создание водяных знаков.

Входной класс

Этот класс предварительно обрабатывает входные данные по соображениям безопасности.

Языковой класс

Этот класс используется для интернационализации.

Класс погрузчика

Этот класс загружает такие элементы, как Просмотр файлов, Драйверы, Помощники, Модели и т. Д.

Класс миграций

Этот класс предоставляет функции, связанные с миграцией базы данных.

Выходной класс

Этот класс отправляет вывод в браузер, а также кэширует эту веб-страницу.

Класс пагинации

Этот класс добавляет функции пагинации на веб-страницу.

Шаблон Parser Class

Template Parser Class может выполнять простую подстановку текста для псевдопеременных, содержащихся в ваших файлах просмотра. Он может анализировать простые переменные или пары переменных тегов.

Класс безопасности

Этот класс содержит функции безопасности, такие как XSS Filtering, CSRF и т. Д.

Библиотека сессий

Этот класс предоставляет функциональные возможности для поддержки сеанса вашего приложения.

HTML таблица

Этот класс используется для автоматической генерации таблиц HTML из результатов массива или базы данных.

Trackback Class

Класс Trackback предоставляет функции, которые позволяют отправлять и получать данные Trackback.

Типография Класс

Типографский класс предоставляет методы, которые помогают форматировать текст.

Класс модульного тестирования

Этот класс предоставляет функциональные возможности для модульного тестирования вашего приложения и генерации результата.

Класс URI

Класс URI предоставляет методы, которые помогают вам получать информацию из ваших строк URI. Если вы используете URI-маршрутизацию, вы также можете получить информацию о перенаправленных сегментах.

Класс агента пользователя

Класс User Agent Class предоставляет функции, которые помогают идентифицировать информацию о браузере, мобильном устройстве или роботе, посещающем ваш сайт. Кроме того, вы можете получить информацию о реферере, а также информацию о языке и поддерживаемых наборах символов.

Классы серверов XML-RPC и XML-RPC

Классы CodeIgniter XML-RPC позволяют отправлять запросы на другой сервер или настраивать собственный XML-RPC-сервер для приема запросов.

Класс Zip-кодирования

Этот класс используется для создания zip-архивов ваших данных.

Создание библиотек

CodeIgniter имеет богатый набор библиотек, которые вы можете найти в папке system / библиотеки, но CodeIgniter не только ограничен системными библиотеками, вы также можете создавать свои собственные библиотеки, которые можно хранить в папке application / library . Вы можете создавать библиотеки тремя способами.

  • Создать новую библиотеку
  • Расширить родную библиотеку
  • Заменить родную библиотеку

Создать новую библиотеку

При создании новой библиотеки следует учитывать следующее:

  • Имя файла должно начинаться с заглавной буквы, например, 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 */

Загрузка пользовательской библиотеки

Вышеприведенную библиотеку можно загрузить, просто выполнив следующую строку в вашем контроллере.

$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 , используйте код, как показано ниже. Сохраните ваше имя файла с помощью Email.php и присвойте имя класса CI_Email .

email.php