Hoster.ru
Электролитный проезд, д.3, стр.47 115230 Россия, Москва 8 800 200 05 42
Hoster.ru

Composer PHP — это скрипт, который представляет собой пакетный менеджер и менеджер зависимостей для PHP. С ним вам не нужно самостоятельно искать и устанавливать нужные для проекта библиотеки и компоненты, а также обновлять их вручную. Все это сделает сама утилита. Без использования Композера сложно представить современную PHP-разработку. Сейчас в 99 % случаев никто не пишет собственные фреймворки и библиотеки — в открытом доступе есть масса готовых реализаций, которые нужно просто скачать и подключить к вашему проекту. Однако многие из таких библиотек, в свою очередь, опираются на написанные другими авторами PHP-пакеты — это называется зависимостями. Композер автоматически отслеживает все зависимости и выполняет за разработчика рутинную работу по скачиванию, установке и обновлению всех этих пакетов. Это существенно ускоряет процесс разработки и распространения кода.

Composer PHP работает со всеми популярными движками сайтов: Opencart, Wordpress, Drupal, MODX и другими, а также поддерживает PHP-фреймворки Symfony, Laravel и Yii2.

 

Как работает PHP Composer

Представьте, что для проекта вы скачали определенную библиотеку или фреймворк, но у него есть пакетные зависимости — значит, нужно скачать и настроить соответствующие компоненты. В свою очередь, у зависимых пакетов тоже есть библиотеки, без которых они не будут работать, а у этих библиотек — свои зависимости. Без менеджера зависимостей вам пришлось бы все это скачивать и устанавливать самостоятельно. Но если есть Композер, его скрипт autoload php composer обнаружит установленную вами библиотеку, после чего автоматически скачает и настроит все пакеты, фреймворки и библиотеки. Пакеты программа ищет и скачивает из репозитория packagist.org (по умолчанию), но можно указать и другие.

Возможности Composer:

  • с его помощью можно быстро найти и скачать нужную библиотеку, а установит ее автоматически сама утилита;
  • так как установка производится в ту директорию, откуда была дана команда инсталляции, можно создавать несколько папок в проекте с разными версиями библиотек. Или же управлять несколькими проектами;
  • после скачивания и установки библиотеки (пакета, фреймворка) программа сама найдет, скачает, установит и настроит зависимости к ней;
  • Композер автоматически обновляет установленные компоненты, а также их зависимости;
  • для установки может использоваться не только репозиторий по умолчанию, но и другие;
  • с помощью команд Композера можно быстро удалить определенную библиотеку или другой пакет.

Все пакеты программа хранит в папке vendor. Также полезным будет знать, что главный конфигурационный файл менеджера — одноименный файл с расширением .json. А в аналогичном файле с расширением .lock хранится вся история загрузок и версий пакетов — при переносе Композера на другой хостинг данный файл необходимо скопировать и также перенести.

 

Как установить Composer на хостинг

Прежде всего уточните у вашего хостинг-провайдера — возможно, Composer PHP уже установлен на хостинге по умолчанию. Все действия по установке производятся через терминал. Чтобы установить пакетный менеджер на сервер:

  • Для начала подключаемся к серверу по SSH: прописываем в терминале команду ssh, а также логин и адрес сервера в виде: login@123.456.789.012, где login — это логин вашей учетной записи на сервере, а 123.456.789.012 — IP-адрес сервера
  • Далее переходим в корневой каталог аккаунта:
    cd ~
  • И создаем в нем каталог bin, в который будем устанавливать программу:
    mkdir -p bin
  • Переходим в новый созданный каталог:
    cd bin
  • Загружаем программу с официального сайта:
    curl -sS https://getcomposer.org/installer > composer-setup.php
  • Снова переходим в корневой каталог:
    cd ~
  • И запускаем установку менеджера пакетов:
    путь_к_файлу_php bin/composer-setup.php —install-dir=bin —filename=composer, где вместо путь_к_файлу_php вы должны прописать путь к файлу php на сервере

После установки прервите соединение по SSH и подключитесь заново. Затем проверьте, корректно ли установился менеджер зависимостей. Для этого введите в терминал команду — наименование программы. Если установка Composer прошла удачно — в окне терминала появится заставка утилиты и номер ее версии.

 

Использование Composer

Репозиторий пакетов Composer PHP не имеет GUI-интерфейса. Взаимодействовать с ним можно только по SSH. С помощью команд можно управлять всеми пакетами и зависимостями сразу, по одиночке и по нескольку штук. Чтобы перечислить в команде несколько пакетов — их нужно указать через пробел. Любая команда по управлению Композером начинается со слова «composer», а уже дальше прописываются директивы. Самые распространенные:

  • require vendor/name — установить пакет. Здесь vendor — наименование автора (поставщика) библиотеки, а name — имя самой библиотеки или пакета.
    Например, если мы хотим установить пакет twig, то пишем require «twig/twig:^2.0»;
  • remove vendor/name — удалить пакет. Аналогично, vendor — наименование поставщика, а name — имя пакета;
  • update vendor/name — обновить определенный пакет и его зависимости;
  • install — команда установки сразу всех пакетов;
  • update — команда обновления всех пакетов и зависимостей;
  • self-update — обновление самого менеджера зависимостей;
  • show — посмотреть все установленные пакеты;
  • depends vendor/name — посмотреть зависимости определенного пакета;
  • validate — проверка валидности программы, точнее ее главного конфигурационного файла;
  • update —lock — обновление только файла с перечнем всех установленных пакетов и их версий;
  • create-project vendor/name — создать проект из определенного пакета в текущей папке.
    Например, чтобы развернуть фреймворк Laravel, пишем create-project —prefer-dist laravel/laravel;
  • create-project vendor/name folder — создать проект из установленного пакета в указанную папку (указываете ее имя вместо folder);
  • clear-cache — очистка внутреннего кеша пакетов;
  • help имя_команды — вывести справку по определенной команде.

Посмотреть полный список команд Композера можно командой list.

 

Запуск Composer без установки

Использовать менеджер зависимостей можно и без полноценной установки. Для этого:

  • скачайте архив composer.phar с официального сайта,
  • загрузите его на сервер,
  • перейдите в директорию, где лежит архив,
  • запускайте композер командами вида php composer.phar install (update и т. д.).
Мы используем файлы cookie. Продолжив работу с сайтом, вы соглашаетесь с Политикой обработки персональных данных.