Требования Elang и настройка окружения
Перед установкой Elang убедитесь, что исполняемый файл PHP в терминале соответствует требованиям фреймворка. PHP в терминале и PHP веб-сервера могут относиться к разным установкам.
Что понадобится
- PHP 8.3 или новее в пределах ветки PHP 8.x. Репозиторий тестируется на PHP 8.3 и 8.4.
- Composer 2 для установки PHP-зависимостей.
- Расширения PHP: ctype, JSON, mbstring, PDO и Sodium.
- Сборка PHP с поддержкой Argon2id для сервиса паролей.
- Драйвер PDO для выбранной базы данных. Включённые примеры используют
pdo_sqlite. - Терминал и текстовый редактор. Git полезен для участия в разработке фреймворка; обычные приложения устанавливаются через Composer.
Для набора тестов фреймворка дополнительно нужны расширения, требуемые PHPUnit, включая DOM и XML. composer install сообщает об отсутствующих расширениях, а не пропускает их молча.
Проверьте терминал
Выполняйте эти команды по одной:
php -v
php --ini
php -m
composer --version
Первая команда должна показать PHP 8.3 или новее. Вторая показывает загруженный CLI-файл php.ini. Третья выводит список включённых модулей. Четвёртая должна подтвердить использование Composer 2.
Если php или composer не распознаётся, после установки откройте терминал заново и проверьте запись исполняемого файла в PATH. В Windows команда where.exe php показывает, какой исполняемый файл используется. В macOS и Linux используйте command -v php.
Запустите Elang doctor
После установки зависимостей и создания ключа приложения:
php elang doctor
Каждая обязательная проверка должна показать OK. Doctor проверяет версию PHP, необходимые расширения, поддержку паролей, ключ приложения, доступность записи в хранилище, настройки отладки для рабочей среды и простое подключение к базе данных. Он не выводит ключ или учётные данные базы данных.
Для машиночитаемого вывода:
php elang doctor --json
Неудачная обязательная проверка возвращает ненулевой код завершения и конкретное указание следующего действия. Если отсутствует сам автозагрузчик, сначала выполните composer install, чтобы doctor мог запуститься.
Выберите базу данных
SQLite — самый короткий путь для локального обучения. Он хранит данные в файле и не требует отдельного сервера базы данных. Храните этот файл вне public/.
Для MySQL нужны работающий сервер, учётные данные, созданная для приложения база данных и pdo_mysql. PostgreSQL аналогично требует сервер и pdo_pgsql. DBAL поддерживает эти драйверы; текущие интеграционные тесты репозитория проверяют SQLite, а не все платформы баз данных.
Продолжите с учётом своего опыта
Впервые настраиваете локальные инструменты PHP? Следуйте руководству по настройке окружения для Windows, macOS и Ubuntu. Уже уверенно работаете с PHP и Composer? Перейдите к установке, а затем к первому маршруту.