
Composer — это менеджер зависимостей для PHP (аналог npm для Node.js или pip для Python ). Composer подключит все необходимые пакеты PHP, от которых зависит ваш проект, и настроит их автоматически.
В этом руководстве мы покажем вам, как установить и использовать Composer на компьютере с Ubuntu 18.04. Те же действия можно выполнить и в Ubuntu 16.04.
Предпосылки
Прежде чем продолжить изучение этого руководства, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo и в вашей системе Ubuntu 18.04 установлен PHP .
Установка PHP Composer
Если вы спешите и не хотите проверять целостность файла, прокрутите страницу вниз до раздела Установка Composer — быстрый способ .
Чтобы установить Composer в системе Ubuntu, выполните следующие действия:
-
Перед загрузкой и установкой Composer сначала обновите индекс пакетов и установите необходимые требования:
sudo apt updatesudo apt install wget php-cli php-zip unzip -
Теперь, когда на нашем компьютере установлен php cli, мы можем загрузить установщик Composer с помощью:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"Приведенная выше команда загрузит файл
composer-setup.phpв текущий рабочий каталог . -
Далее нам необходимо проверить целостность данных скрипта, сравнив хэш
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. После проверки установщика вы можете перейти к следующему шагу. -
Следующая команда установит Composer в каталог
/usr/local/bin:sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composerAll settings correct for using Composer Downloading... Composer (version 1.8.5) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composercomposerустанавливается как общесистемная команда и будет доступен всем пользователям. -
Последний шаг — проверка установки:
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 в вашей системе Ubuntu:
-
Установить PHP CLI и Zip:
sudo apt update && sudo apt install wget php-cli php-zip unzip curl -
Скачать Composer с curl:
curl -sS https://getcomposer.org/installer |php -
Переместите файл Composer в каталог
/usr/local/bin:sudo mv composer.phar /usr/local/bin/composer
Начало работы с Composer
Теперь, когда Composer установлен в вашей системе Ubuntu, мы покажем вам, как использовать Composer в PHP-проекте.
Первый шаг — создать корневой каталог проекта и разместить в нём файл composer.json . Этот файл описывает ваш PHP-проект, включая зависимости PHP и другие метаданные.
Создайте каталог проекта и перейдите в него с помощью:
mkdir ~/my-first-composer-projectcd ~/my-first-composer-project
Следующим шагом будет инициализация нового файла composer.json с помощью команды composer require и указание пакета, который мы хотим загрузить.
В этом примере мы создадим образец приложения, которое будет выводить текущее время, используя пакет под названием carbon .
Выполните следующую команду для инициализации нового composer.json и установки пакета carbon:
composer require nesbot/carbon
Using version ^1.33 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 (1.33.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.
Вы можете выполнить поиск пакетов 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-08-28 23:47:19
Позже, если вы захотите обновить свои пакеты PHP, вы можете просто запустить:
composer update
Приведенная выше команда проверит наличие новых версий установленных пакетов, и если будет найдена более новая версия и ограничение версии совпадает с указанным в файле composer.json , Composer обновит пакет.
Заключение
Вы узнали, как установить Composer на компьютер с Ubuntu 18.04. Мы также показали, как использовать Composer для создания простого PHP-проекта.
Более подробную информацию о Composer можно найти на официальной странице документации Composer .
Если у вас есть вопросы, пожалуйста, оставьте комментарий ниже.
Composer php ubuntu Не используете Ubuntu 18.04?
Выберите другую ОС: центос 7 центос 8 дебиан 10 дебиан 9 убунту 20.04
Связанные руководства
- Как установить Laravel на Ubuntu 18.04
- Как установить Magento 2 на Ubuntu 18.04
- Как установить и использовать PHP Composer в Ubuntu 20.04
- Как установить phpMyAdmin с Nginx в Ubuntu 18.04
- Как установить и использовать PHP Composer в Debian 9
- Как установить и использовать PHP Composer на CentOS 7
- Как установить и защитить phpMyAdmin с помощью Apache в Ubuntu 18.04