Как установить и использовать PHP Composer на CentOS 8

Как установить и использовать Composer в CentOS 8

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

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

В этом руководстве подробно описана процедура установки Composer в CentOS 8. Если вы спешите и не хотите проверять целостность файлов, прокрутите страницу вниз до раздела Установка Composer — быстрый способ .

Предпосылки

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

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

Чтобы установить Composer на CentOS 8, выполните следующие действия.

  1. Установите пакет PHP CLI (интерфейс командной строки) и все остальные зависимости с помощью:

     sudo dnf install php-cli php-json php-zip wget unzip
  2. После установки PHP CLI загрузите скрипт установщика Composer:

     php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

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

  3. Проверьте целостность данных, сравнив хэш 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 . После проверки целостности перейдите к следующему шагу.

  4. Выполните следующую команду для установки Composer в каталог /usr/local/bin :

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

    Команда выше устанавливает composer как общесистемную команду, доступную всем пользователям. Вывод будет выглядеть примерно так:

     All settings correct for using Composer Downloading... Composer (version 1.10.1) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer

    Приведенная выше команда устанавливает composer как общесистемную команду и делает ее доступной для всех пользователей.

  5. Проверьте установку, распечатав версию Composer:

     composer -V
     Composer version 1.10.1 2020-03-13 20:34:27

На этом этапе вы успешно установили Composer в своей системе CentOS и можете начать его использовать.

Установка Composer [быстрый способ]

Чтобы быстро установить Composer в системе CentOS 8, выполните следующие действия:

  1. Установить PHP CLI и Zip:

     sudo dnf install php-cli php-json php-zip curl unzip
  2. Скачать Composer с curl:

     curl -sS https://getcomposer.org/installer |php
  3. Переместите файл Composer в каталог /usr/local/bin :

     sudo mv composer.phar /usr/local/bin/composer

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

Теперь, когда Composer установлен в вашей системе CentOS, мы покажем вам, как использовать Composer в PHP-проекте.

Начните с создания корневого каталога проекта и перейдите в него :

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

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

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

 composer require nesbot/carbon
 sing version ^2.32 for nesbot/carbon ./composer.json has been created Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 4 installs, 0 updates, 0 removals - Installing symfony/translation-contracts (v2.0.1): Downloading (connecting..Downloading (100%) - Installing symfony/polyfill-mbstring (v1.15.0): Downloading (100%) - Installing symfony/translation (v5.0.6): Downloading (100%) - Installing nesbot/carbon (2.32.1): Downloading (100%) symfony/polyfill-mbstring suggests installing ext-mbstring (For best performance) 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 3 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 vagrant vagrant 60 Mar 27 18:05 composer.json -rw-rw-r--. 1 vagrant vagrant 11135 Mar 27 18:06 composer.lock drwxrwxr-x. 6 vagrant vagrant 82 Mar 27 18: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 CarbonCarbon ; printf ( "Now: %s" , Carbon :: now ());

Давайте проанализируем код строка за строкой.

В первой строке после открывающего тега php мы включаем файл vendor/autoload.php который автоматически загружает все библиотеки.

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

Запустите скрипт, введя:

 php testing.php

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

 Now: 2020-03-27 22:12:26

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

 composer update

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

Заключение

Вы узнали, как установить Composer на компьютер с CentOS 8. Мы также показали, как использовать Composer для создания простого PHP-проекта.

Более подробную информацию о Composer можно найти на официальной странице документации Composer .

Если у вас есть вопросы, пожалуйста, оставьте комментарий ниже.

Composer php centos Не используете CentOS 8?
Выберите другую ОС:
центос 8 дебиан 10 дебиан 9 убунту 18.04 убунту 20.04

Связанные руководства

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *