Коротко: Composer — менеджер зависимостей PHP (7.2.5+); разбираем, как его установить и начать пользоваться.
Composer — менеджер зависимостей PHP: с его помощью можно устанавливать, обновлять и объявлять зависимости любого PHP-проекта (PHP 7.2.5 и выше). Сегодня редкий продукт на PHP обходится без Composer. Разберём, как его установить.
Как установить Composer?
Чтобы начать пользоваться Composer, его нужно установить — выполните в консоли ряд команд:
sudo apt-get update -y && sudo apt-get upgrade -y
sudo apt install php-cli unzip curl
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php
HASH=`curl -sS https://composer.github.io/installer.sig`
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
После выполнения этих команд Composer будет установлен в ваш дистрибутив Linux и доступен по команде composer.
Проверка установки Composer
Сразу после установки убедитесь, что всё встало корректно:
composer --version
# или короче
composer -V
Команда должна вывести версию, например Composer version 2.7.x. Если консоль отвечает command not found — значит бинарник не в PATH (об этом ниже в разделе про ошибки).
Глобально или в проект
Есть два способа держать Composer, и они не взаимоисключающие:
- Глобально — то, что мы сделали выше: положили
composerв/usr/local/bin, и он доступен из любой папки. Удобно для повседневной работы. - Локально в проекте — иногда нужно зафиксировать конкретную версию Composer рядом с проектом (например, в CI). Тогда ставят
composer.pharпрямо в корень проекта и вызывают черезphp composer.phar install. Так у разных проектов может быть своя версия менеджера.
macOS и Windows
На macOS проще всего через Homebrew: brew install composer (PHP подтянется как зависимость). Ручная установка — те же шаги с getcomposer.org/installer, что и на Linux.
На Windows есть официальный установщик Composer-Setup.exe с сайта getcomposer.org — он сам находит PHP, прописывает PATH и не требует возни с консолью.
Частые ошибки при установке
composer: command not found— бинарник не вPATH. Либо кладите его в каталог изPATH(как/usr/local/binвыше), либо добавьте нужный путь вPATH.Permission deniedпри установке в/usr/local/bin— не хватает прав на запись, используйтеsudoдля этого шага (в примере выше он уже есть).PHP could not find a compatible Composer/ несовместимая версия PHP — Composer 2.x требует PHP 7.2.5+. Проверьтеphp -vи при необходимости обновите PHP.Allowed memory size exhaustedна больших проектах — запускайте с увеличенным лимитом памяти:COMPOSER_MEMORY_LIMIT=-1 composer update.
Обновление Composer
Держать менеджер в актуальном состоянии просто:
composer self-update
# откатиться на предыдущую версию, если что-то сломалось:
composer self-update --rollback
Что дальше
После установки логичный следующий шаг — разобраться, как Composer организует автозагрузку классов по стандарту PSR-4. Об этом подробно в статьях: автозагрузка в PHP через Composer и — если хочется понять механику изнутри — PSR-4 автозагрузка без Composer, вручную.