Composer – пакетный менеджер PHP. Что и как?

Composer – пакетный менеджер PHP. Что и как? Коротко о Composer

Composer - менеджер зависимостей для PHP (Dependency Manager for PHP) или пакетный менеджер (зависимости это пакеты - логически законченные сторонние или собственные наработки, использующиеся в проекте).

Установить лучше глобально. Для OSX в терминале вводим

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Вторая команда создаёт ссылку с команды php composer.phar на просто composer. И теперь можно использовать команду composer. Проверьте как установился composer просто введя команду
composer
Если всё правильно, то вы увидите список команд. Значит можно использовать composer.
 
проверка установки composer
 

1. Как создавать новый проект в composer?

Все зависимости composer хранит в файле composer.json, на вопрос "почему именно JSON?" разработчики Composer отвечают "Потому что. Просто примите это.".
Создать этот файл можно командой
composer init
(или php composer.phar init)

Композитор проведёт вас по нескольких шагам - название проекта, описание, лицензия. Для вас важен шаг, где composer просит указать пакет, который хотите установить. Он предложит поискать пакет (search for a package), где вы вводите, например, "yii" и поиск предлагает все пакеты для yii, имеющиеся на сайте packagist.org. Выбрав то, что вам надо composer создаст в папке вашего проекта файл composer.json, со всеми описанными зависимостями.

Теперь осталось их только установить командой:

composer install

Все. Теперь в вашем проекте появилось все что вы хотели скачать.

 

2. Как создать проект из готового пакета через composer?

Делается это командой create-project ("Create new project from a package into given directory.") в папке, где хотите создать папку проекта.

Например возьмём пакет продвинутой заготовки для приложения на yii2 (https://packagist.org/packages/yiisoft/yii2-app-advanced). Значит этот пакет загрузили на packagist.org.

composer create-project yiisoft/yii2-app-advanced yii2advanced 2.0.0-beta

yii2advanced - указываете название вашего проекта (папки на компьютере)
2.0.0-beta - версия (смотрим какие версии есть на packagist.org)

После этой команды composer скачивает пакет, и устанавливает все зависимости к нему (вам не надо искать по разным сайтам необходимые расширения - composer находит их сам).

 

3. Обновлять пакет.

Командой 

composer update

(Updates your dependencies to the latest version according to composer.json, and updates the composer.lock file.) – обновляет все установленные (или установит заново случайно удалённые) пакеты до свежих версий. А может и не обновлять версии до самых свежих, если создать специальный composer.lock файл — это позволяет зафиксировать комбинацию из стабильных версий всех используемых в проекте библиотек;

composer update

На рисунке у меня обновление не происходит, так как все зависимости актуальны.

 

almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.

Вы можете почитать все статьи от almix'а.



Другие статьи по этой теме:

Комментарии (0)     Подпишитесь на RSS комментариев к этой статье.