-
Notifications
You must be signed in to change notification settings - Fork 30
PackageSystem
Dmitriy Zayceff edited this page Feb 22, 2017
·
23 revisions
⚠️ Внимание, в данной статье описывается механизм, который находится в разработке и появится лишь в DevelNext 16.3 версии.
Система пакетов в jphp позволяет объединить несколько классов, функций и констант в один пакет. Затем, пакет можно легко подключить в скрипте через use <название пакета>, благодаря чему в скрипте станут доступны все классы, функции и константы пакета.
ℹ️ Не стоит путать пакет jphp с пакетами расширений DevelNext. Пакет в jphp можно создать вне всякого расширения DevelNext. Это является новой возможностью языка php в рамках jphp.
### Структура пакета Пакет в jphp состоит из списка классов, функций и констант. Он имеет короткое название, которое всегда начинается с маленькой буквой. > JPHP из коробки предоставляет механизм автозагрузки пакетов по аналогии с автозагрузкой классов. Реализуется он через класс `php\lang\PackageLoader` и в движке для develnext реализован свой загрузчик пакетов [`FrameworkPackageLoader`](https://github.com/jphp-compiler/develnext/blob/master/jphp-app-framework/src/php/framework/FrameworkPackageLoader.php).