Уведомления
Очистить
☰ МЕНЮ

Что находится в файле 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"
    ]
}