Source code for https://byzoni.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

8.4 KiB

title date draft tags categories description image
Как установить и использовать PHP Composer в Ubuntu 20.04 2021-01-05T13:36:18+05:00 false [composer php ubuntu] [Linux Tutorials] 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:
$ sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer
Downloading...

Composer (version 2.0.8) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/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 и установить углеродный пакет:

$ composer require nesbot/carbon
Using version ^2.43 for nesbot/carbon
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 5 installs, 0 updates, 0 removals
  - Installing symfony/translation-contracts (v2.3.0): Downloading (100%)         
  - Installing symfony/polyfill-php80 (v1.20.0): Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.20.0): Downloading (100%)         
  - Installing symfony/translation (v5.2.1): Downloading (100%)         
  - Installing nesbot/carbon (2.43.0): Downloading (100%)         
Writing lock file
Generating autoload files
5 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Как показано в выходных данных, Composer создает файл composer.json, загружает и устанавливает carbon и все его зависимости.

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

$ ls -l
-rw-rw-r--. 1 username username    60 Jan 05 12:05 composer.json
-rw-rw-r--. 1 username username 11135 Jan 05 12:06 composer.lock
drwxrwxr-x. 6 username username    82 Jan 05 12:06 vendor
  • vendor - это каталог, в котором хранятся зависимости проекта.
  • composer.lock - это файл, в котором хранится информация обо всех установленных пакетах и их версиях, что позволяет привязать проект к конкретным версиям.
  • composer.json - это файл, описывающий ваш PHP-проект, включая PHP-зависимости и другие метаданные.

Все пакеты PHP, устанавливаемые с помощью Composer, перечислены на Packagist.

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 now.

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

$ php testing.php

Результат должен выглядеть примерно так:

Now: 2021-01-05 12:41:04

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

$ composer update

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

Заключение

Мы показали вам, как установить Composer в Ubuntu 20.04 и как использовать его для создания базового проекта PHP.

Для получения дополнительной информации о Composer посетите официальную страницу документации.