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

Как установить и использовать Composer в Debian 9

Composer — это менеджер зависимостей для PHP (аналог npm для Node.js или pip для Python ). Composer подключит все необходимые пакеты PHP, от которых зависит ваш проект, и настроит их автоматически.

В этом руководстве описаны шаги, необходимые для установки Composer в системах Debian 9. Мы также рассмотрим, как использовать Composer для создания и управления PHP-проектами.

Предпосылки

Прежде чем продолжить работу с этим руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo и в вашей системе Debian 9 установлен PHP .

Установка Composer

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

  1. Сначала обновите индекс пакетов и установите необходимые пакеты с помощью следующих команд:

     sudo apt update sudo apt 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 со страницы 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 . После проверки установщика вы можете перейти к следующему шагу.

  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 установлен в вашей системе Debian. Он устанавливается как общесистемная команда и будет доступен всем пользователям.

  5. Для проверки установки просто введите:

     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, выполнив команду ./composer.phar .

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

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

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

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

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

Далее мы инициализируем новый файл composer.json с помощью команды composer require и укажем пакет, который хотим загрузить. В этом примере мы создадим пример приложения, которое будет выводить текущее время, используя пакет carbon .

Выполните следующую команду для инициализации нового файла composer.json и установки пакета carbon:

 composer require nesbot/carbon
 Using version ^1.34 for nesbot/carbon ./composer.json has been created Loading composer repositories with package information Updating dependencies (including require-dev) - Installing symfony/polyfill-mbstring (v1.9.0): Downloading (100%) - Installing symfony/translation (v3.4.17): Downloading (100%) - Installing nesbot/carbon (1.34.0): 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

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

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

 ls -l
 -rw-r--r-- 1 linuxize users 60 Oct 16 21:02 composer.json -rw-r--r-- 1 linuxize users 6851 Oct 16 21:02 composer.lock drwxr-xr-x 5 linuxize users 4096 Oct 16 21:02 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 , автоматически сгенерированный Composer. Этот файл автоматически загрузит все необходимые библиотеки.

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

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

 php testing.php

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

 Now: 2018-10-16 21:08:45

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

 composer update

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

Заключение

Вы узнали, как установить Composer на машину с Debian 9. Мы также показали, как использовать Composer для создания простого PHP-проекта. Чтобы узнать больше о Composer, посетите официальную страницу документации Composer .

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

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

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

Источник

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

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