Composer — это менеджер зависимостей для PHP (похожий на npm для Node.js или pip для Python ).

С Composer вы можете указать библиотеки PHP, от которых зависит ваш проект, и он будет извлекать и управлять всеми библиотеками и зависимостями для вас. Composer используется во всех современных PHP-фреймворках и платформах, таких как Laravel, Symfony, Drupal и Magento.

В этом руководстве объясняется, как установить и использовать Composer в Ubuntu 20.04.

Установка PHP Composer на Ubuntu

Перед установкой Composer убедитесь, что в вашей системе установлены все необходимые требования:

sudo apt update
sudo apt install wget php-cli php-zip unzip

Composer предлагает установщик, написанный на PHP , который мы будем использовать для установки Composer. Используйте wget для загрузки установщика:

wget -O composer-setup.php https://getcomposer.org/installer

Приведенная выше команда сохранит файл как composer-setup.phpв текущем рабочем каталоге.

Composer — это CLI-приложение с одним файлом, которое можно установить глобально или как часть проекта. Для глобальной установки требуются привилегии sudo .

Чтобы установить Composer глобально как общесистемную команду, которая будет доступна для всех пользователей, просто поместите файл в каталог, который находится в системе PATH . Выполните следующую команду, чтобы установить Composer в /usr/local/binкаталог:

All settings correct for using Composer
Downloading...

Composer (version 1.10.7) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Теперь вы можете использовать Composer, запустив его composerв своем терминале.

Чтобы установить композитор локально, введите:

sudo php composer-setup.php --install-dir=/path/to/project

Это загрузит файл с именем composer.pharв корневом каталоге вашего проекта. Чтобы использовать Composer, перейдите в каталог проекта и запуститеphp composer.phar

Когда доступна новая версия Composer, вы можете обновить свою установку с помощью следующей команды:

sudo composer self-update  

Начало работы с Composer

Теперь, когда Composer установлен в вашей системе Ubuntu, давайте посмотрим, как создать проект PHP с помощью Composer.

Первый шаг — создать корневой каталог проекта и перейти к нему :

mkdir ~/my-first-composer-project
cd ~/my-first-composer-project

В этом примере мы будем использовать пакет PHP под названием carbon для создания примера приложения, которое печатает текущее время.

Выполните следующую команду, чтобы инициализировать новый проект Composer и установить пакет carbon:

composer require nesbot/carbon

Composer создает composer.jsonфайл, загружает и устанавливает все зависимости. Если вы укажете каталог вашего проекта , вы увидите, что он содержит два файла composer.jsonи composer.lock, и vendorкаталог.

  • vendorэто каталог, в котором хранятся зависимости проекта.
  • composer.lockэто файл, который хранит информацию обо всех установленных пакетах и ​​их версиях, привязывая проект к конкретным версиям.
  • composer.jsonэто файл, описывающий ваш проект PHP, включая зависимости PHP и другие метаданные.

Composer имеет возможности автозагрузки, которые позволяют нам использовать классы PHP без необходимости requireили includeфайлов.

Создайте файл с именем testing.phpи добавьте следующий код:

<?php

require __DIR__ . '/vendor/autoload.php';

use Carbon\Carbon;

printf("Now: %s", Carbon::now());

Файл vendor/autoload.phpавтоматически генерируется Composer и автоматически загружает все библиотеки.

Следующая строка создает псевдоним, Carbonа последняя строка выводит текущее время с использованием nowметода Carbon.

Запустите скрипт, набрав:

php testing.php

Позже, если вам нужно обновить пакеты проекта, введите:

composer update

Приведенная выше команда проверит наличие более новых версий установленных пакетов, и если будет найдена более новая версия и ограничение версии совпадает с указанным в composer.json, Composer обновит пакет.