Skip to content

Latest commit

 

History

History
50 lines (32 loc) · 2.1 KB

loader.md

File metadata and controls

50 lines (32 loc) · 2.1 KB

##Подгрузка модулей

###Основы

Все системные модули Knee расположенные в директории /knee/ подгружаются в автоматическом режиме. Если вы захотите добавить новый функционал, то требуется только создать файл с классом идентичным его названию и указать в нем пространство имен namespace Knee;.

Для того, что бы ни обращаться к классу по длинному имени /Knee/Class_Name::method(), следует создать псевдоним в файле /app/aliases.php.

Все остальные сторонние библиотеки следует хранить в директории /app/libraries/. Например такой библиотекой может быть captcha.

Сторонние библиотеки подгружаются вручную в файле /app/loaders.php.

###Доступ

Для примера загрузим стороннюю библиотеку captcha.php из директории /app/libraries/captcha/. Тогда в /app/loaders.php укажем путь расположения библиотеки.

Loader::path(ROOT_PATH.'/app/libraries/captcha/captcha.php');

Теперь мы имеем возможность обращаться к классу этой библиотеки из нашего приложения.

$catcha = new Captcha();
$catcha->genstring();
$catcha->show();

Или можно зарегистрировать класс заранее, и тогда он будет загружен автоматически при необходимости.

Loader::map(array(
	'Captcha' => ROOT_PATH.'/app/libraries/captcha/captcha.php')
);

$catcha = new Captcha();

Или с использованием пространства имен.

Loader::map(array(
'Name\Test' => ROOT_PATH.'/app/libraries/name/test.php')
);

$test = new \Name\Test();