Менеджер зависимостей Composer

В проект встроен менеджер зависимостей Composer, который скачивает необходимые зависимости после первой установки фреймворка Aleksmir Core. К слову сказать, если вы устанавливаете Aleksmir Core из архива zip, то скачивать зависимости не придется. Это удобно, если на вашем хостинге запрещен запуск программ на выполнение через командную строку.

Composer поставляется с удобным автозагрузчиком классов, расположенным в файле /vendor/autoload.php . Он позволяет подключать файлы классов PHP в автоматическом режиме без необходимости использования операторов для вставки кода, таких как include(), require().

Сама программа Composer расположена в каталоге /vendor/composer . Настройки расположены в файлах composer.json и composer.lock. Основные настройки в файле composer.json:

{
    "name": "aleksmir/core",
    "license": "MIT",
    "minimum-stability": "dev",

Настройка "name": "aleksmir/core" - имя проекта; aleksmir - производитель, core - ядро фреймворка Aleksmir Core
Настройка "license": "MIT" - тип лицензии
Настройка "minimum-stability": "dev" - указан уровень стабильности dev

Блок:

"autoload": {
    "psr-4": {
        "Aleksmir\\": "modules/"
    },
    "files": [
        "modules/Core/Helpers/helpers.php"
    ]
}

Ключ "psr-4" указывает, что пространство имен сопоставлено со структурой подкаталогов; префикс пространства имен Aleksmir\\ указывает на каталог modules.

Ключ "files" указывает, что в начале запуска программы необходимо загрузить файл modules/Core/Helpers/helpers.php, который содержит вспомогательные функции

Блок `require` содержит список пакетов, от которых зависит фреймворк Aleksmir Core:

"require": {
    "eftec/bladeone": "dev-master"
    "artoodetoo/junc": "dev-master"
}

Файл composer.lock хранит версии пакетов, которые установлены.