Что находится в файле composer.json
name: Название проекта.
description: Описание проекта.
authors: Список авторов проекта.
require: Требуемые пакеты.
autoload: Автозагрузка классов и интерфейсов.
repositories: Репозитории пакетов Composer.
keywords: Ключевые слова для поиска проекта.
minimum-stability: Минимальная стабильность проекта.
prefer-stable: Предпочтение стабильных версий пакетов.
extra: Дополнительные параметры Composer.
scripts: Скрипты которые можно хранить в Composer.
Добвление своего скрипта
"scripts": {
"test": "phpunit",
"do-something": "MyVendor\\MyClass::doSomething",
"run-server": "php -S"
}
Обратите внимание что время исполнения скриптов ограничено, и при запуске команды
composer run-server
...она не будет работать бесконечно, обычно максимум составляет 300 секунд (5 мин)
Чтобы обойти это ограничение необходимо модифицировать код так:
"scripts": {
"test": "phpunit",
"do-something": "MyVendor\\MyClass::doSomething",
"run-server": [
"Composer\\Config::disableProcessTimeout",
"php -S"
]
}
По такому же принципу можно добавлять несколько команд в свой скрипт
"scripts": {
"test": [
"phpunit",
"echo 'Test done'"
],
"do-something": "MyVendor\\MyClass::doSomething",
"run-server": [
"Composer\\Config::disableProcessTimeout",
"php -S"
]
}