Как установить и использовать PHP Composer в Ubuntu 18.04
Как установить и использовать PHP Composer в Ubuntu 18.04
How To Install and Use PHP Composer on Ubuntu 18.04
В этом руководстве мы покажем вам, как установить и использовать Composer на компьютере с Ubuntu 18.04. Те же шаги можно использовать для Ubuntu 16.04.

Composer - это диспетчер зависимостей для PHP (аналогично npm для Node.js или pip для Python ). Composer подключит все необходимые пакеты PHP, от которых зависит ваш проект, и будет управлять ими за вас.
Введение
Прежде чем продолжить это руководство, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo и у вас установлен PHP в вашей системе Ubuntu 18.04 .
Установка PHP Composer
Чтобы установить Composer в вашей системе Ubuntu, выполните следующие действия:
-
Перед загрузкой и установкой Composer сначала обновите индекс пакетов и установите необходимые требования:
sudo apt update
sudo apt install wget php-cli php-zip unzip
-
Теперь, когда на нашем компьютере установлен php cli, мы можем загрузить установщик композитора с помощью:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Приведенная выше команда загрузит
composer-setup.php
файл в текущий рабочий каталог .
-
Затем нам нужно проверить целостность данных скрипта, сравнив
SHA-384
хэш скрипта с последним хешем установщика, найденным на странице открытых ключей / подписей Composer .Мы будем использовать следующую команду wget, чтобы загрузить ожидаемую подпись последней версии установщика Composer со страницы Composer Github и сохранить ее в переменной с именем
HASH
:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
Теперь выполните следующую команду, чтобы убедиться, что сценарий установки не поврежден:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Если хеши совпадают, вы увидите следующий вывод:
Installer verified
Если хеши не совпадают, вы увидите
Installer corrupt
. В этом случае вам потребуется повторно загрузить скрипт установки Composer и дважды проверить значение$HASH
переменной с помощьюecho $HASH
. После проверки установщика вы можете перейти к следующему шагу.
-
Следующая команда установит Composer в
/usr/local/bin
каталог:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer Downloading... Composer (version 1.8.5) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
composer
Устанавливаются как команда общесистемной и он будет доступен для всех пользователей.
-
Последний шаг - проверить установку:
composer
Приведенная выше команда распечатает версию, команды и аргументы Composer.
______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.8.5 2019-04-09 17:46:47 Usage: command [options] [arguments]
Если вы хотите установить Composer для каждого проекта, используйте следующую команду,
php composer-setup.php
которая создаст файл с именем composer.phar
в вашем текущем рабочем каталоге. Вы можете использовать композитор, запустив./composer.phar <command>.
Установка Composer [Быстрый способ]
Используйте следующие команды для быстрой установки Composer в вашей системе Ubuntu:
-
Установите PHP CLI и Zip:
sudo apt update && sudo apt install wget php-cli php-zip unzip curl
-
Скачайте Composer с curl:
curl -sS https://getcomposer.org/installer |php
-
Переместите файл Composer в
/usr/local/bin
каталог:sudo mv composer.phar /usr/local/bin/composer
Начало работы с Composer
Теперь, когда Composer установлен в вашей системе Ubuntu, мы покажем вам, как использовать Composer в проекте PHP.
Первый шаг - создать каталог, который будет корневым каталогом проекта и будет содержать composer.json
файл. Этот файл описывает ваш PHP-проект, включая PHP-зависимости и другие метаданные.
Создайте каталог проекта и переключитесь в него с помощью:
mkdir ~/my-first-composer-project
cd ~/my-first-composer-project
Следующим шагом является инициализация нового composer.json
с помощью composer require <package name>
команды и указание пакета, который мы хотим загрузить.
В этом примере мы создадим образец приложения, которое будет печатать текущее время с помощью пакета под названием carbon .
Выполните следующую команду, чтобы инициализировать новый composer.json
и установить углеродный пакет:
composer require nesbot/carbon
Using version ^1.33 for nesbot/carbon
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 3 installs, 0 updates, 0 removals
- Installing symfony/polyfill-mbstring (v1.9.0): Downloading (100%)
- Installing symfony/translation (v4.1.4): Downloading (100%)
- Installing nesbot/carbon (1.33.0): Downloading (100%)
symfony/translation suggests installing symfony/config
symfony/translation suggests installing symfony/yaml
symfony/translation suggests installing psr/log-implementation (To use logging capability in translator)
Writing lock file
Generating autoload files
Как видно из выходных данных выше, Composer создаст composer.json
файл, загрузит и установит углерод и все его зависимости.
Если список каталогов вашего проекта , вы увидите , что он содержит два файла composer.json
и composer.lock
, и vendor
каталог.
ls -l
-rw-r--r-- 1 baksdev users 60 Aug 29 00:50 composer.json
-rw-r--r-- 1 baksdev users 6.8K Aug 29 00:50 composer.lock
drwxr-xr-x 5 baksdev users 4.0K Aug 29 00:50 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\Carbon
а Carbon
в последней строке печатаем текущее время, используя now
метод Carbon .
Запустите сценарий, набрав:
php testing.php
Результат должен выглядеть примерно так:
Now: 2018-08-28 23:47:19
Позже, если вы захотите обновить свои пакеты PHP, вы можете просто запустить:
composer update
Приведенная выше команда проверит наличие более новых версий установленных пакетов, и если будет обнаружена более новая версия и ограничение версии совпадает с ограничением, указанным в composer.json
, Composer обновит пакет.
Ввыод
Вы узнали, как установить Composer на свой компьютер с Ubuntu 18.04. Мы также показали вам, как использовать Composer для создания базового проекта PHP.
Чтобы найти дополнительную информацию о Composer, посетите официальную страницу документации Composer .