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

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

2 Января 2020 | CentOS

В этом руководстве мы пройдем этапы установки и использования Composer на компьютере с CentOS 7.

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

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

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


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


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

Следующие шаги описывают, как установить Composer в системе CentOS 7.

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

    sudo yum install php-cli 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 со страницы Github Composer и сохранит ее в переменной с именем 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. После проверки установщика вы можете перейти к следующему шагу.

  4. Выполните следующую команду, чтобы установить 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 устанавливается как общесистемная команда и будет доступен для всех пользователей.

  5. Последний шаг должен проверить установку:

    composer

    Команда выше напечатает версию Composer, команды и аргументы.

    ______
    / ____/___  ____ ___  ____  ____  ________  _____
    / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
    / /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
    \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                        /_/
    Composer version 1.8.5 2019-04-09 17:46:47
    
    Usage:
        command [options] [arguments]

    На данный момент вы успешно установили Composer в вашей системе CentOS.


Если вы хотите установить Composer для каждого проекта, используйте следующую команду, php composer-setup.php которая создаст файл с именем composer.phar в вашем текущем рабочем каталоге. Вы можете использовать композитор, запустив ./composer.phar <command>.


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

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

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

composer.json Файл описывает ваш проект PHP, включая зависимости PHP и другие метаданные.

Создайте каталог проекта и переключитесь на него :


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


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

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


composer require nesbot/carbon
Using version ^2.2 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 (2.2.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 файл и загрузит и установит carbon и все его зависимости.

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


ls -l
-rw-r--r-- 1 linuxize users   60 Aug 29 00:50 composer.json
-rw-r--r-- 1 linuxize users 6.8K Aug 29 00:50 composer.lock
drwxr-xr-x 5 linuxize users 4.0K Aug 29 00:50 vendor
  • vendor Каталог, в котором зависимости проекта сохраняется.
  • composer.lock Содержит список всех установленных пакетов , включая их версию.
  • composer.json Описывает PHP проект и все зависимости PHP.

Вы можете искать в пакете Composer Packagist пакеты PHP.

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

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


<?php

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

use Carbon\Carbon;

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

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

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

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

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


php testing.php


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


Now: 2018-09-26 20:08:18


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


composer update


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


Вывод 

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

Чтобы найти больше информации о Composer, посетите официальную страницу документации Composer .

    Комментарии

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

Загрузка комментариев...