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

Composer - это свободный пакетный менеджер для установки зависимостей и самих пакетов PHP. Он разработан Нильсом Адерманом и Хорди Боггиано. С помощью скрипта можно в несколько нажатий установить нужный пакет, а также все его зависимости, например, ZendFramework или Symfony. Он широко используется разработчиками PHP скриптов.

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

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

Вы не можете установить программу из официальных репозиториев. Нужно скачать скрипт из официального сайта и поместить его в папку с вашим проектом. Но сначала обновите систему и установите зависимости:

sudo apt update

sudo apt install curl php-cli php-mbstring git unzip

 

Установка Composer ubuntu может быть выполнена двумя способами. Либо локально в папку проекта, либо же глобально, для всей системы. Сначала рассмотрим как установить программу локально. Перейдите в папку проекта:

cd /путь/к/папке/

Выполните такую команду для загрузки установочного скрипта:

curl -sS https://getcomposer.org/installer -o composer-setup.php

 

Затем запустите этот скрипт, чтобы создать файл composet.phar, который и будет использоваться для установки пакетов:

php composer-setup.php

 

Теперь вы можете проверить работает ли Composer:

php composer.phar

 

Теперь рассмотрим как установить программу глобально для всей системы. Вы можете скачивать файл установщика в любую папку, например, домашнюю:

curl -sS https://getcomposer.org/installer -o composer-setup.php

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

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

 

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

composer

 

 

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

Для того чтобы указать какие пакеты нужно устанавливать используется конфигурационный файл composer.json. Сначала нужно его инициализировать в папке проекта. Для этого выполните:

composer init

Затем ответьте на вопросы программы. Можно оставить ответы по умолчанию. В файле сообщаются зависимости вашего проекта, а также их версии. Создайте этот файл в корневой папке вашего проекта. Синтаксис записей очень прост, и если вы раньше имели дело с JSON, то без проблем разберетесь:

{
"require": {
"производитель/пакет": "версия"
}
"require-dev": {
"производитель/пакет": "версия"
}
}

Секция require отвечает за пакеты, необходимые для работы программы, а require-dev - только за пакеты для разработки. Например, для проекта необходимо установить библиотеку работы с RSS Atom - picofeed. Для этого сначала откройте сайт https://packagist.org и найдите этот пакет:

 

На его странице вы можете видеть команду composer, которой его можно установить, в ней полное имя, а чуть ниже последнюю версию.

 

Для установки пакета выполните команду со страницы:

composer require p3k/picofeed

После установки пакет появится в секции require. Если во время установки вы получаете ошибку, например, такую:

 

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

sudo apt install php-dom

Для того чтобы установить все пакеты, описанные в файле конфигурации, используйте команду:

composer install

 

После установки пакетов composer создает файл autoload.php в папке vendor вашего проекта, с помощью него можно включить в проект все библиотеки, которые были установлены. Для этого достаточно подключить этот файл к проекту с помощью инструкции include или require:

require 'vendor/autoload.php';

Например, возьмем небольшой пример чтения ленты rss с GitHub:

vi feed.php

<?php
require("vendor/autoload.php");

use PicoFeed\Reader\Reader;
use PicoFeed\PicoFeedException;

try {
  $reader = new Reader;
  // Return a resource
  $resource = $reader->download('https://losst.ru/feed/');
  // Return the right parser instance according to the feed format
  $parser = $reader->getParser(
    $resource->getUrl(),
    $resource->getContent(),
    $resource->getEncoding()
  );
  // Return a Feed object
  $feed = $parser->execute();
  // Print the feed properties with the magic method __toString()
  echo $feed;
}catch (PicoFeedException $e) {
// Do Something...
}
?>

 

php feed.php

Установленные пакеты можно удалить. Например:

composer remove picofeed

 

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

composer update

 

Выводы

В этой небольшой статье мы рассмотрели как выполняется установка Composer Ubuntu 20.04 и 18.04, а также как использовать эту утилиту в своем проекте для разрешения зависимостей. Это очень удобно, когда вы можете один раз указать нужные пакеты и больше не заботиться об их установке и обновлении на других машинах.

Оцените статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (8 оценок, среднее: 4,50 из 5)
Загрузка...

Один комментарий

  1. Евгений 4 января, 2021 Ответить

Ответить

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: