Composer - менеджер зависимостей для PHP

PHP
/
1970-01-01 02:00
Просмотры: 11322

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

Composer это не обычный менеджер пакетов. Речь идет о "пакетах" или библиотеках установленных для отдельного проекта в отдельный каталог или папку(например, vendor для Yii фреймворка). По умолчанию Composer ничего не будет устанавливать глобально. Таким образом он является менеджером зависимостей.

Сама идея не нова. Аналогичные инстументы это npm для Node.js и Bundler для Ruby, от куда и черпалось основное вдохновление. Но для PHP не было ничего подобного.

Задачу, которую решает Composer и суть работы:

a) У вас есть проект, котрый зависит от многих библиотек.

b) Некоторые из библиотек зависят от других библиотек.

c) Вы объявляете, что у вас есть зависимости.

d) Composer сморит, какие библиотеки и какие версии должны быть установлены и устанавливает их(загружает в свой проект)

Регистрация зависимостей

Допустим, вы создаете проект и нуждаетесь в определенных библиотеках. Например, вы решили использовать monolog. Для того, чтобы добавить его в свой проект, все что вам нужно сделать, это создать файл composer.json, описывающий зависимость проекта.

Содержимое файла composer.json

{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

Таким образом мы легко добавили в проек пакет monolog/monolog начиная с версии 1.2 и выше.

Системные требования

Для работы Composer требуется PHP 5.3.2+. PHP может быть установлен или скомпилирован с определенными настройками или флагами. В случае специфичной несовместимости установщик Composer выведет предупреждение.

Composer мультиплатформен и отлично работает на Windows, Linux или OSX.

Установка в *nix системах

$ curl -sS https://getcomposer.org/installer | php

Таким образом, для начала проверятся настройки PHP и после этого загружается PHAR(PHP архив) файл composer.phar в рабочую директорию.

Можно установить Composer в определенную директрорию. Для этого нужно указать параметр --install-dir, в качестве значения выступает путь в относительном или абсолютном формате. Например, установка в директорию bin:

$ curl -sS https://getcomposer.org/installer | php -- --install-dir=bin

Вы можете установить Composer в любое место вашей системы.

Например:

$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer

Установка в Windows

Установка Composer в Windows очень проста. Для начала скачайте и запустите Composer-Setup.exe

В командной строке: сменить дитекторию на ваш %PATH%, скачать composer.phar.

C:\Users\username>cd C:\bin
C:\bin>php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));"

Создать новый файл composer.bat рядом с composer.phar

C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat

Закрываем текущий терминал и в новом проверяем работоспособность

C:\Users\username>composer -V 

Composer version 27d8904

C:\Users\username> 

Автозагрузка

Кроме загрузки библиотек Composer также подгружать заргуженные пакеты в ваш проект. Для использования этой возможности добавте такую строчку в ваш код:

require 'vendor/autoload.php';

Добавить комментарий

comments powered by Disqus