Категория Архивы: 3. Класс Autoloader

3.9 Класс «AutoLoader». Подключение классов и функций.

Теперь мы добрались до методов, которые отвечают за автоматическое подключение классов и методов. Они работают опираясь на данные имеющейся карты классов. Метод findFile() и Метод loadClass() Методы loadFile(), loadGroupFiles() и loadAllFiles() Метод __invoke() Метод findFile() и Метод loadClass() Метод «findFile()» — этот метод возвращает путь к файлу, в котором расположен класс «$class». Метод «loadClass()» — данный метод подключает… Подробнее »

3.8 Класс «AutoLoader». Манипуляции с картой классов

В принципе все манипуляции с картой классов сводятся к трём методам. Они описаны ниже. Их не так много потому, что нет особой надобности во внесении в каких-то крупных изменений в карту классов. Карта ведь создаётся автоматически, а потому она составлена именно так, как нам это необходимо. Метод writeToFile() Метод addClassMapFromFile() и addClassMapFromDir() Метод writeToFile() Этот метод манипуляции записывает… Подробнее »

3.7 Класс «Autoloader». Формирование полной карты классов. Метод generateClassMap()

В данной статье я подробно рассмотрю ключевой метод создания карты классов «generateClassMap()». Метод generateClassMap() Это метод самостоятельно создаёт карту классов. Сначала создаётся пустой массив «$newClassMap». Он будет заполняться необходимыми данными. Далее запускаем метод «discoverFiles()». После того, как данный метод заполнил массив «files«, можно приступить к его перебору с помощью конструкции «foreach». В процессе перебора создаются два массива «$classMatch»… Подробнее »

3.5 Класс «Autoloader». Работа с папками

В данной статье мы познакомимся с методами класса «Autoloader«, которые будут сканировать все вложенные папки на наличие файлов «.php», а также выполнять некоторые иные манипуляции. Вся работа с папками ляжет на следующие четыре метода: Метод getMapDirectory() Метод hasMapDirectory() Метод removeMapDirectory() Метод addMapDirectory() Метод getMapDirectory() Этот метод возвращает содержимое массива «classMapFrom«. В нём хранится список папок (директорий), которые потом… Подробнее »

3.6 Класс «Autoloader». Работа с файлами

В данной статье мы познакомимся с методами класса «Autoloader«, которые будут будут искать все файлы «.php» в папках и сохранять пути к ним в массиве. Вся работа с файлами ляжет на следующие методы: Метод getFiles() Метод hasFiles() Метод addFiles() Метод discoverFiles() Метод getFiles() Этот метод возвращает содержимое массива » files «. В нём хранится список файлов «.php», которые… Подробнее »

3.4 Класс «Autoloader». Карта классов

Карта классов позволяет автоматически подключать любой файл «.php» проекта. А это избавляет разработчика от лишних трудов. Прописывать путь к каждому файлу (особенно если их десятки, а может и сотня) — это очень утомляет. Поэтому для работы с картой классов нам понадобятся несколько методов. Метод getClassMap() Метод addClassMap() Метод addToClassMap() Методы removeClassMap() и removeFromClassMap() Метод getClassMap() Данный метод возвращает… Подробнее »

3.3 Класс «AutoLoader». Регистрация автозагрузчика

Регистрируем класс «AutoLoader» в качестве метода автозагрузки. Для этого создаётся метод «register()», который использует функцию «spl_autoload_register()». Метод register() Метод unregister() Функция spl_autoload_register() Дело в том, что регистрация автозагрузчика возможна только с помощью функции «spl_autoload_register()«. Функция «spl_autolod_register()» содержит три параметра: Вызываемая функция (метод) Флаг использования исключений (в случае неудачи) Флаг постановки в начало очереди выполнения В качестве первого аргумента,… Подробнее »

3.2 AutoLoader. Инициализация

Приступим к созданию класса «Autoloader». Начнём с объявления всех необходимых переменных, а затем опишем метод инициализации класса. Переменные класса Инициализация класса Переменные класса Для этого в папке «core» каталога «includes» создаём файл «AutoLoader.php» В нём сразу укажем пространство имён «Wp\Core» и имя класса «AutoLoader». Далее объявляем переменные «$instance» и «$exception». В первой переменной будет храниться ссылка на текущий… Подробнее »

3.1 Класс «AutoLoader»

Для чего нужен автозагрузчик? Он позволяет подключить все необходимые для работы CMS файлы. Причём подключение происходит автоматически, при запуске системы. Это избавляет разработчика от необходимости подключать все файлы вручную. Конечно когда этих файлов не так много, то от автозагрузчика пользы мало. Но если количество этих файлов перевалит за сотню? А за две сотни? Вот тут помощь автозагрузчика весьма… Подробнее »