Contents
Что такое Composer?
Composer — это пакетный менеджер уровня приложений для языка программирования PHP, который предоставляет средства по управлению зависимостями в PHP-приложении. Вы можете описать от каких библиотек зависит ваш проект и Composer установит нужные библиотеки за вас! Причём Composer — это не менеджер пакетов в классическом понимании.
В двух словах как работает Composer:
- У вас есть проект на PHP, который зависит от нескольких библиотек.
- Некоторые из этих библиотек зависят от других библиотек.
- Вы описываете в своём проекте те библиотеки, от которых непосредственно зависит ваш код.
- Composer находит нужные версии требуемых библиотек для всего проекта, скачивает их и устанавливает в папку вашего проекта.
Скачивание Composer — инсталлятор для Windows
- Заходим на сайт https://getcomposer.org/
- Заходим в раздел Download
- В подразделе Windows Installer скачиваем Composer-Setup.exe
Установка Composer на Windows 10
Для работы Composer Требуется PHP (необходимо заранее установить на windows php).
Порядок инсталляции Composer на винду:
1. Запускаем дистрибутив с админскими правами:
2. Выполняем поэтапно все пункты инсталлятора (почти всегда нажимать нужно Далее/Next), Только с php нужно выбрать директорию:
Выбираем php.exe в директории с php (инсталляция Php производится отдельно)
Обновляем php.ini (файл с настройками php):
Прокси не нужен
Устанавливаем Composer:
Первая команда в Composer. Как использовать Composer на Windows?
Сразу после инсталляции php и composer, эти команды не будут запускаться в сторонних папках. Если у Вас нет доступа к переменным окружения, то запустить Composer можно следующим образом.
Для примера скачаем с помощью Composer проект для подключения к API (Гугловский PHP проект):
- Создаем на диске С папку C:\Composer_install. В ней будем создавать проекты. Создадим проект «New» (папку C:\Composer_install\New):
- Скопируем в папку C:\Composer_install\New файлы из папки C:\ProgramData\ComposerSetup\bin;
- Запустим команду composer для скачивания проекта google analytics:
1 |
C:\php\php.exe composer.phar require "google/apiclient:^2.0" |
Если появится ошибка «Failed to download psr/http-message from dist: You must enable the openssl extension to download files», то нужно включить в php.ini параметр extension=php_openssl.dll, а в composer.json скорей всего понадобится включить строчки:
1 2 3 4 5 6 |
{ "config": { "disable-tls": true, "secure-http": false } } |
Как настроить переменную окружения PATH для php и composer:
После установки переменных обязательно перезапустите Windows. После рестарта винды команда composer будет запускаться в простом виде:
1 |
composer require "google/apiclient:^2.0" |
Другие примеры команд для Composer
Flarum
1 |
composer create-project flarum/flarum --stability=beta |
Результат работы composer Для скачивания проекта Flarum:
Laravel
1 |
composer global require "laravel/installer" |
Описание команд Composer
Команда Composer | Описание команды |
---|---|
composer require vendor/package |
Добавляет требуемый пакет в файл composer.json и устанавливает его в ваш проект.
Команда |
composer install |
Если файла composer.lock нет, резолвит зависимости исходя из composer.json и создаёт его. Далее, анализирует файл composer.lock , скачивает и устанавливает указанные в нём версии пакетов.Опция --no-scripts полезна для обхода запуска скриптов, указанных в pre- и post- настройках. |
composer update |
Обновляет ваши зависимости до последних версий и обновляет composer.lock .
Команда |
composer update --lock |
Иногда, вы можете получить такое предупреждение:
Это может произойти после того, как вы вручную редактировали Поэтому, чтобы подавить это предупреждение, вы можете просто запустить команду |
composer dump-autoload --optimize |
Если вам нужно обновить загрузчик, т. к. появились новые классы, вы можете выполнить команду dump-autoload чтобы избежать установки или обновления пакетов.
Используйте ключ —optimize для преобразования PSR-0 в автозагрузку как для classmap, чтобы автозагрузчик был наиболее быстрым. Это настоятельно рекомендуется для production (вы можете получить 20% прирост), но может занять немного времени для запуска, так что это на данный момент не сделано по умолчанию. Также вы можете использовать |
composer about |
Краткая информация о Composer. |
composer archive vendor/package |
Создать архив для указанного пакета. Команда также может быть использована для архивирования всего проекта без исключенных/игнорируемых файлов. |
composer browse |
Псевдоним для home , открывает URL пакета или его домашнюю страницу в браузере. |
composer clear-cache |
Псевдоним команды clearcache , очищает внутренний кэш пакетов Composer-а. |
composer config --list |
Позволяет редактировать некоторые основные параметры Composer-а либо в локальном файле composer.json, либо в глобальном файле config.json. |
composer create-project vendor/package dir/ |
Создать новый проект из указанного пакета в указанном каталоге. |
composer depends vendor/package |
Сообщает вам какие другие пакеты зависят от конкретного (указанного) пакета. Вы можете указать какие типы связей (require, require-dev) должны быть включены в листинг. По умолчанию выводятся оба. |
composer diagnose |
Если вы считаете, что нашли ошибку, или что-то ведет себя странно, возможно, вы захотите выполнить команду диагностики для выполнения автоматизированной проверки многих общих проблем. |
composer global |
Команда global позволяет другие команды такие, как install , require или update запускать так, как если бы вы запускали их из каталога COMPOSER_HOME .
Это может использоваться для того, чтобы установить командные утилиты глобально. Если вы добавите |
composer help [command] |
Отображает справки для всех других команд: composer.phar help install . |
composer init |
Создает базовый вариант файла composer.json в текущем каталоге.
При запуске команды, Composer будет интерактивно запрашивать значения полей для заполнения, используя при этом для некоторых полей умные значения по умолчанию. |
composer licenses |
Показать информацию о лицензиях зависимостей. |
composer list |
Выводит список допустимых команд. |
composer remove |
Удаляет пакет из секций require или require-dev: remove vendor/package vendor/package2 . |
composer run-script |
Запустить вручную скрипты, объявленные в composer.json . Просто передайте название скрипта и при необходимости --no-dev , чтобы отключить режим dev. |
composer search ключевые слова |
Поиск пакетов.
Команда поиска позволяет вам искать в репозиториях текущего проекта (см. секцию «repositories» в |
composer self-update |
Обновление самого composer.phar до последней версии.
Запуск команды Также вы можете использовать псевдоним |
composer show |
Список всех установленных пакетов (composer show ).Список всех доступных пакетов ( composer show --all ).Инфо об указанном пакете или его специфичной версии ( composer show vendor/package [версия] ). |
composer suggest |
Выводит список всех пакетов, предложенных установленными. Опционально вы можете передать одно или несколько имён пакетов в формате vendor/package чтобы ограничить вывод только теми, что были предложены указанными. |
composer status |
Если вам часто приходится модифицировать код своих зависимостей, а они были установленны «из исходников» (см. опцию --prefer-source команды require ), токоманда status позволит вам проверить есть ли у вас локальные изменения в любой из них. |
composer validate |
Проверяет файл composer.json .
Вы всегда должны запускать команду |
Leave a Reply