Loader. Загрузчик

Этот компонент устарел и используется только для обратной совместимости. Используйте вместо него встроенный в Cotonti автозагрузчик Composer'a.

Класс «Loader», объявленный в файле «Loader.php» предназначен для автоматической загрузки описаний классов и интерфейсов. Автозагрузка происходит в момент первого обращения к классу и Вам не нужно беспокоиться о том, подключили Вы php-файл, содержащий описание класса или нет.

Для регистрации автозагрузчика в стэке __autoload служит статический метод register(). Вызывается так:

// Автозагрузка
require_once './lib/Loader.php';
Loader::register();

Регистрация автозагрузчика происходит в плагине cotonti-lib, так что Вам не нужно заботиться о подключении автозагрузчика в своих расширениях.

Метод регистрирует автозагрузчик только один раз. По этому даже если Вы его подключаете явно, ничего плохого не случится.

 

Как происходит автозагрузка:

Строка, задающая класс, согласно стандарта кодирования psr-0 (https://gist.github.com/Thinkscape/1234504) преобразуется в относительный путь посредством замены знаков подчеркивания разделителями директорий, используемыми в вашей ОС, и добавления расширения «.php». Например, для класса «files_model_File» на Windows будет использоваться путь «files\model\File.php».

Затем полученный файл ищется в папках «modules», «plugins», «lib» и папках заданных в настройке конфигурации include_path. Будет загружен первый встретившийся файл.

Так, если у Вас установлен модуль Файлов - «Files», то при первом обращении к упомянотому выше классу  «files_model_File» будет загружен файл «modules/files/model/File.php»

 
Автор: Alex
Опубликовано: Alex
Комментарии: (0)
Рейтинги:  
0

Теги:

Нет тегов

Комментарии:


Комментарии отсутствуют

Оставить комментарий:

* Просьба все технические вопросы, которые могут потребовать обсуждения, задавать на форуме.
** все некорректные и рекламные посты будут удаляться, ненормативная лексика и оскорбительные высказывания запрещаются.

* Для редактирования комментария осталось 15 минут