- namespace
- Механизм пространств имён, введённый в PHP 5.3+ для предотвращения конфликтов имён классов. Этот инструмент автоматически генерирует согласно установленному пользователем namespace и организует директории App/Models/ в ZIP.
- class
- Шаблон для определения объектов в PHP. То, что создаёт этот инструмент — стандартные PHP class, можно напрямую инстанцировать через new User(...).
- ArrayObject
- Класс стандартной библиотеки PHP SPL, реализующий интерфейсы как ArrayAccess. Классы, сгенерированные в стиле ArrayObject этим инструментом, наследуют \ArrayObject, поддерживают двойной доступ в стиле массива и объекта.
- stdClass
- Встроенный универсальный класс объектов PHP, json_decode($json, false) по умолчанию возвращает этот тип. Классы, сгенерированные в стиле stdClass этим инструментом, наследуют \stdClass, поддерживают только доступ в стиле объекта.
- typed properties
- Объявления типов свойств, введённые в PHP 7.4+ (например: public int $id). Свойства, генерируемые этим инструментом, по умолчанию содержат объявления типов, позволяя IDE и инструментам статического анализа напрямую проверять типы.
- readonly class
- Классы только для чтения, введённые в PHP 8.1+, все свойства в классе автоматически становятся readonly и не могут быть изменены после создания. Стиль readonly этого инструмента создаёт final readonly class, подходит для сценариев неизменяемых DTO.
- JsonSerializable
- Интерфейс, введённый в PHP 5.4+, объекты, реализующие этот интерфейс, автоматически вызывают метод jsonSerialize() при обработке json_encode(). Все классы этого инструмента автоматически реализуют этот интерфейс.
- Jsonable (Laravel)
- Контрактный интерфейс фреймворка Laravel, после реализации объект может вызывать toJson() для вывода JSON. Стиль Laravel интеграции этого инструмента автоматически реализует этот интерфейс.
- Arrayable (Laravel)
- Контрактный интерфейс фреймворка Laravel, после реализации объект может вызывать toArray() для вывода массива. Стиль Laravel интеграции этого инструмента автоматически реализует этот интерфейс.
- Composer
- Официальный инструмент управления зависимостями PHP. При использовании кода, сгенерированного этим инструментом, нужно настроить PSR-4 автозагрузку в composer.json (например: App\\: src/).
- PSR-4
- Стандарт автозагрузки, принятый PHP-FIG, загружает файлы классов через сопоставление пространство имён — директория. ZIP-пакеты, генерируемые этим инструментом, структурированы по пути пространства имён и соответствуют стандарту PSR-4.
- Symfony Serializer
- Фреймворк сериализации компонента Symfony. Классы, сгенерированные в стиле ArrayObject этим инструментом, могут использоваться с PropertyNormalizer Symfony Serializer для глубокой сериализации и десериализации.
- Eloquent API Resource
- Класс API ресурсов Laravel Eloquent, используется для форматирования API ответов. Классы, сгенерированные в стиле Laravel интеграции этим инструментом, могут напрямую использоваться как базовые классы API Resource.
- composer.json
- Файл конфигурации проекта Composer. После помещения кода, сгенерированного этим инструментом, в директорию src нужно настроить секцию autoload в composer.json и выполнить composer dump-autoload.
- json_encode / json_decode
- Встроенные функции PHP для сериализации и десериализации JSON. После реализации классом, сгенерированным этим инструментом, JsonSerializable, json_encode() автоматически вызывает метод jsonSerialize().
- PHPUnit DataProvider
- Механизм поставщиков данных фреймворка тестирования PHPUnit. PHP классы, сгенерированные этим инструментом, могут инъецироваться в тест-кейсы через DataProvider, повышая эффективность написания тестов с автодополнением IDE.
- PHPStan
- Инструмент статического анализа PHP, может проверять типы кода, обнаруживать ошибки. Классы, сгенерированные этим инструментом, имеют typed properties, поэтому могут полностью выводить типы свойств в режиме PHPStan --level=8.
- Psalm
- Ещё один инструмент статического анализа PHP с открытым исходным кодом от Vimeo. Классы, сгенерированные этим инструментом, могут выполнять строгую проверку типов с PropertyTypeProvider Psalm.
- Doctrine
- Набор инструментов ORM и DBAL в экосистеме PHP. PHP классы, сгенерированные этим инструментом, могут использоваться как основа для Doctrine Entity, затем вручную добавлять аннотации типа #[ORM\Column].
- php -l
- Команда проверки синтаксиса в командной строке PHP. Классы, сгенерированные этим инструментом, можно сначала проверить на синтаксис через php -l User.php, затем подключать в проект.
- Composer dump-autoload
- Команда Composer для пересоздания индекса автозагрузки. После помещения классов, сгенерированных этим инструментом, в директорию src нужно выполнить composer dump-autoload, чтобы PSR-4 автозагрузка их распознала.
- JSON_THROW_ON_ERROR
- Флаг обработки ошибок json_decode() в PHP 7.3+, при включении выбрасывает исключение JsonException при неудачном разборе JSON. Пример Laravel этого инструмента использует строгий разбор.
- Hash (PHP)
- Встроенная хеш-функция PHP, в основном используется для валидации WebHook. Классы WebHook callback, сгенерированные этим инструментом, используются для верификации подписи вместе с hash_hmac().