как установить composer на linux
Как установить и использовать PHP Composer в Ubuntu 18.04
Composer — это диспетчер зависимостей для PHP (аналогично npm для Node.js или pip для Python ). Composer подключит все необходимые пакеты PHP, от которых зависит ваш проект, и будет управлять ими за вас.
В этом руководстве мы покажем вам, как установить и использовать Composer на компьютере с Ubuntu 18.04. Те же шаги можно использовать для Ubuntu 16.04.
Подготовка
Установка PHP Composer
Чтобы установить Composer в вашей системе Ubuntu, выполните следующие действия:
Перед загрузкой и установкой Composer сначала обновите индекс пакетов и установите необходимые требования:
Теперь, когда на нашем компьютере установлен php cli, мы можем загрузить установщик композитора с помощью:
Мы будем использовать следующую команду wget, чтобы загрузить ожидаемую подпись последней версии установщика Composer со страницы Composer Github и сохранить ее в переменной с именем HASH :
Теперь выполните следующую команду, чтобы убедиться, что сценарий установки не поврежден:
Если хеши совпадают, вы увидите следующий вывод:
Следующая команда установит Composer в каталог /usr/local/bin :
composer устанавливается как общесистемная команда и будет доступен всем пользователям.
Последний шаг — проверить установку:
Приведенная выше команда распечатает версию, команды и аргументы Composer.
Установка Composer [Быстрый способ]
Используйте следующие команды для быстрой установки Composer в вашей системе Ubuntu:
Установите PHP CLI и Zip:
Скачайте Composer с curl:
Переместите файл Composer в каталог /usr/local/bin :
Начало работы с Composer
Теперь, когда Composer установлен в вашей системе Ubuntu, мы покажем вам, как использовать Composer в проекте PHP.
Создайте каталог проекта и переключитесь в него с помощью:
Следующим шагом является инициализация нового composer.json с помощью команды composer require
и указание пакета, который мы хотим загрузить.
Выполните следующую команду, чтобы инициализировать новый composer.json и установить пакет углерода:
Composer предоставляет возможности автозагрузки, которые позволяют нам использовать классы PHP без необходимости require или include файлы.
Создайте файл с именем testing.php и добавьте следующий код:
Давайте проанализируем код построчно.
В первой строке после открывающего тега php мы vendor/autoload.php файл vendor/autoload.php который был автоматически сгенерирован Composer, который автоматически загрузит все библиотеки.
Запустите сценарий, набрав:
Результат должен выглядеть примерно так:
Позже, если вы захотите обновить свои пакеты PHP, вы можете просто запустить:
Выводы
Вы узнали, как установить Composer на свой компьютер с Ubuntu 18.04. Мы также показали вам, как использовать Composer для создания базового проекта PHP.
Если у вас есть вопросы, оставьте комментарий ниже.
Как Установить Composer — Полное Руководство
В этой статье мы покажем вам, как установить Composer на различные платформы, а также как им пользоваться. Composer — менеджер зависимостей для PHP. Это простой и надёжный инструмент, который разработчики используют для управления внешними пакетами или библиотеками и их интеграции в свои проекты на основе PHP. Таким образом, им не нужно писать веб-страницы или приложения с нуля.
Чтобы помочь вам освоить этот инструмент, мы также покажем, как создать базовый PHP-проект.
Но прежде чем приступить к пробной установке Composer, убедитесь, что у вас есть доступ к интерфейсу командной строки (в вашей системе или на сервере).
Установка Composer
В этом разделе вы узнаете, как установить Composer на общий хостинг и операционные системы, такие как Linux, macOS и Windows.
1. Установка Composer на Общий Хостинг, Linux или macOS
Команды для установки Composer на общий хостинг, Linux (ПК или сервер) и macOS одинаковы.
Обратите внимание, что сейчас в Hostinger действуют скидки на хостинг до 85%!
Обратите внимание, что Composer включен в наши планы хостинга Премиум и Бизнес. Если вы подписаны на один из этих планов, просто пропустите эту часть. Однако, если вы обнаружили, что он устарел, обновите его, выполнив следующую команду:
Следуйте инструкции, чтобы узнать, как установить Composer в вашей системе:
Вы получите следующий результат:
Командная строка покажет следующий результат:
Установка Composer на Windows
Начало работы с Composer на компьютере с Windows немного отличается. На самом деле начать работу с Composer на Windows гораздо проще. Вам не понадобятся какие-либо команды для установки и загрузки.
Просто следуйте инструкции:
Вуаля! Вы узнали, как установить Composer на компьютер под операционной системой Windows. Установщик автоматически добавит Composer в вашу переменную PATH. Вы сможете открыть командную строку и запустить Composer с любого места.
Создание и Общая Информация о composer.json
Теперь самое интересное — использование Composer на практике, а именно в вашем PHP-проекте.
Для этого, создайте отдельный файл composer.json. Этот файл служит своего рода шпаргалкой для Composer; он будет загружать для вашего проекта только те пакеты (зависимости), которые в нём упомянуты.
Обратите внимание, что он также проверяет совместимость версий пакетов для вашего проекта. К примеру, если вы используете старый пакет в вашем проекте, файл composer.json даст вам об этом знать для избежания возможных проблем в будущем.
У вас есть возможность создать и обновлять файл composer.json самостоятельно. Но так как в наших руководствах мы стараемся показать, как автоматизировать некоторые задачи, этот способ будет неуместен. Мы не рекомендуем создавать файл вручную.
Давайте продемонстрируем, насколько полезен composer.json, создав пробный проект.
Наш проект — это простой таймер PHP, позволяющий разработчикам узнать сколько времени тратиться на выполнение той или иной части кода. Это очень полезно при оптимизации и отладке.
Следуйте пошаговому руководству, чтобы создать свой проект:
Вывод покажет версию phpunit/php-timer:
Символ каретки (^) определяется Composer, как опция максимальной совместимости. Это означает, что Composer всегда будет обновлять пакет, пока не появится версия, которая каким-либо образом вызовет ошибку.
В нашем случае диапазон обновления пакета > = 1.0.9 Использование Скрипта Автозагрузки
Если вы дошли до этой части руководства, все последующее вам должно даваться очень легко. Ваши зависимости были установлены и ваш проект готов к работе. Почти.
Теперь вам необходимо загрузить эти зависимости в ваш PHP-скрипт. Если бы не файл автозагрузки Composer, мы бы потратили на это довольно много времени.
Чтобы добиться автозагрузки, просто напишите следующую строку перед объявлением или созданием любых новых переменных в вашем скрипте:
Пример ниже поможет вам лучше это понять.
Допустим, мы хотим протестировать наш проект phptimer:
Затем вставьте в ваш файл следующие строки:
Терминал должен показать вывод, подобный этому:
Обновление Зависимостей Вашего Проекта
Теперь нам осталось лишь узнать, как производить обновление пакетов. Сделать это можно двумя способами:
Не забудьте поменять vendor/package на имя пакета, который вы хотите обновить.
Команда update также автоматически обновит файлы composer.json и composer.lock для соответствия текущему состоянию вашего проекта.
Заключение
Composer помогает разработчикам управлять зависимостями проектов PHP. Благодаря этому программному обеспечению они могут легко интегрировать и управлять пакетами с открытым исходным кодом в одном месте.
Что хорошо, Composer также может разрешать зависимости для каждого проекта отдельно. Таким образом, разработчики могут контролировать пакеты, а также размер каждого проекта.
Из этого руководства вы узнали, как установить Composer и эффективно его использовать. Подводя итог, давайте ещё раз перечислим все шаги:
Мы надеемся, что наше руководство станет для вас стартом для создания не одного прекрасного проекта на PHP. Удачи и не стесняйтесь задавать вопросы в разделе комментариев ниже.
Установка и использование Composer в Ubuntu 16.04
Composer – это популярный менеджер зависимостей PHP, который упрощает процесс установки и обновления зависимостей проекта. Composer проверяет, от каких пакетов зависит проект, а затем устанавливает все необходимые версии пакетов в соответствии с требованиями.
Данное руководство поможет установить и начать работу с Composer на сервере Ubuntu 16.04.
Требования
1: Установка зависимостей Composer
Прежде чем приступить к установке Composer, нужно установить все зависимости программы.
Сначала обновите индекс пакетов:
sudo apt-get update
Теперь установите зависимости Composer. В дальнейшем понадобятся следующие пакеты:
Все эти пакеты можно установить при помощи команды:
sudo apt-get install curl php-cli php-mbstring git unzip
2: Загрузка и установка Composer
Composer предоставляет написанный на PHP инсталлятор. Перейдите в домашний каталог и извлеките инсталлятор при помощи curl:
Запустите скрипт PHP, чтобы убедиться, что хэш SHA-384 пакета совпадает с хэшем инсталлятора, указанном на этой странице.
Примечание: Замените выделенное красным значение своим хэшем.
Если значения совпали, команда вернёт:
Чтобы выполнить глобальную установку composer, введите:
Эта команда загрузит пакет менеджера Composer и выполнит его глобальную установку в /usr/local/bin, после чего в системе появится общедоступная команда composer. Вывод будет выглядеть так:
All settings correct for using Composer
Downloading 1.1.1.
Composer successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
Чтобы убедиться в том, то установка прошла успешно, запустите команду:
Она должна вернуть:
Это значит, что менеджер зависимостей Composer был успешно установлен.
Также менеджер Composer можно установить индивидуально для каждого отдельного проекта. Локальный вариант установки особенно хорош в том случае, если пользователь не имеет права выполнять общесистемную установку программы. Чтобы установить Composer локально, загрузите пакет и проверьте его подлинность (как показано выше), а затем запустите:
Она создаст файл composer.phar в текущем каталоге, который можно запустить при помощи команды:
3: Файл composer.json
Файл composer.json содержит информацию о зависимостях, которые должен скачать Composer для определённого проекта. Он позволяет задать необходимые версии зависимостей и исключить их нестабильные и потенциально опасные версии.
Этот файл не рекомендуется создавать вручную, поскольку при этом можно допустить ошибку в синтаксисе. Composer автоматически создаст файл composer.json после того, как вы добавите первую зависимость при помощи команды require. Остальные зависимости можно добавить с помощью этой же команды, и при этом нет необходимости вручную редактировать файл.
Процесс установки зависимостей проекта при помощи Composer состоит из следующих этапов:
Рассмотрим этот процесс на примере простого приложения.
Цель этого приложения – превратить заданное предложение в «понятный» URL (или slug); как правило, это приложение используется для преобразования названий страниц в URL-адреса (к примеру, обратите внимание на последний сегмент URL-адреса этого урока).
Итак, создайте каталог проекта; для примера назовём его slugify:
mkdir slugify
cd slugify
Поиск пакетов на Packagist.org
Теперь попробуйте найти пакет, генерирующий slug-адреса, в репозитории Packagist.org. Просто введите в поле поиска запрос slug.
Справа возле каждого результата поиска можно увидеть два счётчика. Первый показывает, сколько раз пакет был установлен; второй счётчик показывает, сколько раз пакет был отмечен на GitHub. Результат поиска можно переупорядочить согласно показателю одного из счётчиков. Конечно, пакеты с большим показателем счётчиков, как правило, более стабильны, так как они многими используются. Также важно проверить описание пакета – действительно ли это нужный пакет?
Итак, нужно найти простой конвертёр адресов. В руководстве используется пакет cocur/slugify.
Обратите внимание: Packagist указывает имя вендора и имя пакета (vendor name и package name). Каждому пакету присваивается уникальный идентификатор, или пространство имён (в том же формате, что и для репозиториев Github: vendor/package). Необходимый пакет называется cocur/slugify. Чтобы загрузить пакет автоматически, нужно указать менеджеру зависимостей пространство имён пакета.
Запрос пакета
Итак, теперь точное имя пакета известно. Используйте команду composer require, чтобы добавить этот пакет в файл composer.json:
composer require cocur/slugify
Using version ^2.1 for cocur/slugify
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
— Installing cocur/slugify (v2.1.1)
Downloading: 100%
Writing lock file
Generating autoload files
Как видите, Composer автоматически определяет необходимую версию пакета. Проверьте каталог проекта, теперь он содержит два файла (composer.json и composer.lock) и каталог vendor:
Файл composer.lock используется для хранения данных о версиях установленных пакетов и обеспечивает использование одинаковых версий пакетов в случае клонирования проекта. Каталог vendor содержит зависимости проекта.
Внимание: В случае использования контроля версий не отправляйте сообщения о коммитах каталога vendor; это применимо только для файлов composer.json и composer.lock.
При установке проекта, который уже содержит файл composer.json, используйте следующую команду, чтобы установить зависимости проекта:
Ограничения версий
Файл composer.json содержит примерно такой код:
Обратите внимание на знак вставки (^) перед номером версии. Для определения версии пакета Composer может использовать несколько типов ограничений и форматов; эта функция позволяет следить за стабильностью проекта. Оператор ^ используется в файле composer.json для максимальной совместимости версий. В данном случае он определяет версию 2.13 как минимальную и разрешает обновления до версии 3.0.
В целом, вам не придётся особенно долго возиться с ограничениями версий в файле composer.json. Однако в некоторых ситуациях может потребоваться отредактировать ограничения вручную (например, если вышла новая версия библиотеки, но composer.json не разрешает обновиться до неё).
Эта таблица поможет разобраться в том, как работают ограничения версий Composer:
Ограничение Значение
^1.0 >= 1.0 = 1.1.0 = 1.0 = 1.0.0 = 1.0 = 1.2
Примечание: Подробнее об ограничениях версий можно прочесть в документации программы.
4: Сценарий autoload
Также Composer использует сценарий autoload, который можно добавить в проект для поддержки автозагрузки. Он упрощает работу с зависимостями и определяет собственные пространства имен.
Нужно просто добавить файл vendor/autoload.php в скрипты PHP перед установкой класса.
Вернёмся к тестовому приложению slugify. Создайте скрипт test.php и задайте в нём библиотеку cocur/slugify:
nano test.php
slugify(‘Hello World, this is a long sentence and I need to make a slug from it!’);
Запустите скрипт в командной строке:
5: Обновление зависимостей проекта
Чтобы обновить зависимости проекта, используйте команду:
Эта команда проверит наличие новых версий пакетов. В случае обнаружении более новой версии, которая разрешена ограничениями версий, менеджер зависимостей установит её вместо устаревшей версии данного пакета. Все изменения будут внесены в composer.lock.
Можно также обновить несколько определённых библиотек одновременно:
composer update vendor/package vendor2/package2
Заключение
Composer – очень мощный инструмент, необходимый каждому разработчику PHP.
Этот менеджер зависимостей не только упрощает процесс управления зависимостями проекта, но и устанавливает новый уровень совместного использования пакетов PHP, разработанных сообществом.
Установка Composer Ubuntu 20.04
В этой статье мы рассмотрим как установить Composer Ubuntu 20.04 и более поздних версиях, а также как пользоваться утилитой.
Установка Composer в Ubuntu
Вы не можете установить программу из официальных репозиториев. Нужно скачать скрипт из официального сайта и поместить его в папку с вашим проектом. Но сначала обновите систему и установите зависимости:
sudo apt install curl php-cli php-mbstring git unzip
Установка Composer ubuntu может быть выполнена двумя способами. Либо локально в папку проекта, либо же глобально, для всей системы. Сначала рассмотрим как установить программу локально. Перейдите в папку проекта:
Выполните такую команду для загрузки установочного скрипта:
Затем запустите этот скрипт, чтобы создать файл composet.phar, который и будет использоваться для установки пакетов:
Теперь вы можете проверить работает ли Composer:
Теперь рассмотрим как установить программу глобально для всей системы. Вы можете скачивать файл установщика в любую папку, например, домашнюю:
Только команда установки будет отличаться, в ней мы указываем папку, куда нужно установить скрипт:
Для проверки работы, вы можете выполнить команду:
Использование Composer
Для того чтобы указать какие пакеты нужно устанавливать используется конфигурационный файл composer.json. Сначала нужно его инициализировать в папке проекта. Для этого выполните:
Затем ответьте на вопросы программы. Можно оставить ответы по умолчанию. В файле сообщаются зависимости вашего проекта, а также их версии. Создайте этот файл в корневой папке вашего проекта. Синтаксис записей очень прост, и если вы раньше имели дело с JSON, то без проблем разберетесь:
<
«require»: <
«производитель/пакет»: «версия»
>
«require-dev»: <
«производитель/пакет»: «версия»
>
>
На его странице вы можете видеть команду composer, которой его можно установить, в ней полное имя, а чуть ниже последнюю версию.
Для установки пакета выполните команду со страницы:
composer require p3k/picofeed
После установки пакет появится в секции require. Если во время установки вы получаете ошибку, например, такую:
Это означает, что пакету не хватает каких-либо зависимостей или возникли конфликты с уже установленными пакетами. В данном случае не хватает расширения PHP Dom. Вы можете установить его командой:
sudo apt install php-dom
Для того чтобы установить все пакеты, описанные в файле конфигурации, используйте команду:
После установки пакетов composer создает файл autoload.php в папке vendor вашего проекта, с помощью него можно включить в проект все библиотеки, которые были установлены. Для этого достаточно подключить этот файл к проекту с помощью инструкции include или require:
Например, возьмем небольшой пример чтения ленты rss с GitHub:
Установленные пакеты можно удалить. Например:
composer remove picofeed
Если версии пакетов устарели, то вы можете их обновить с помощью одной команды:
Выводы
В этой небольшой статье мы рассмотрели как выполняется установка Composer Ubuntu 20.04 и 18.04, а также как использовать эту утилиту в своем проекте для разрешения зависимостей. Это очень удобно, когда вы можете один раз указать нужные пакеты и больше не заботиться об их установке и обновлении на других машинах.
Установка и использование Composer в Ubuntu 20.04
Published on May 21, 2020
Введение
Composer — это популярный менеджер зависимостей PHP, который упрощает процесс установки и обновления зависимостей проекта. Он проверяет, от каких прочих пакетов зависит конкретный проект, а затем устанавливает все необходимые версии пакетов в соответствии с требованиями. Composer также часто используется для загрузки новых проектов на основе популярных инфраструктур PHP, таких как Symfony и Laravel.
Данное руководство поможет установить и начать работу с Composer на сервере Ubuntu 20.04.
Предварительные требования
Для прохождения этого обучающего модуля вам потребуется доступ к серверу Ubuntu 20.04 на уровне sudo без привилегий root и включенный на сервере брандмауэр. Чтобы выполнить настройку, воспользуйтесь руководством по первоначальной настройке сервера Ubuntu 20.04.
Шаг 1 — Установка PHP и необходимых зависимостей
Во-первых, необходимо обновить кэш менеджера пакетов:
Запустите следующую команду для установки требуемых пакетов:
После установки обязательных компонентов можно переходить к установке Composer.
Шаг 2 — Загрузка и установка Composer
Composer предоставляет написанный на PHP скрипт installer. Мы должны загрузить его, убедиться, что он не поврежден, а затем использовать его для установки Composer.
Убедитесь, что вы находитесь в домашней директории, а затем загрузите установщик с помощью curl :
Далее мы убедимся, что хэш установщика совпадает с хэшем SHA-384 для последней версии установщика на странице Composer Public Keys / Signatures. Чтобы упростить проверку, вы можете использовать следующую команду для программного получения последней версии хэша со страницы Composer и ее сохранения в переменной оболочки:
Для проверки полученного значения можно использовать следующую команду:
Теперь выполните следующий код PHP, приведенный на странице загрузки Composer, чтобы подтвердить безопасность запуска скрипта установки:
Вывод должен выглядеть так:
Вывод будет выглядеть следующим образом:
Чтобы протестировать установку, запустите команду:
Это подтверждает, что диспетчер зависимостей Composer был успешно установлен и доступен в рамках всей системы.
Примечание: если вы предпочитаете иметь отдельные исполняемые модули Composer для каждого проекта, который вы размещаете на этом сервере, вы можете выполнить установку локально для каждого проекта. Этот метод также полезен, когда системный пользователь не имеет прав на установку программного обеспечения в рамках всей системы.
А теперь давайте рассмотрим использование Composer для управления
Шаг 3 — Использование Composer в проекте PHP
PHP проекты часто зависят от внешних библиотек, и управление этими зависимостями и их версиями может вызывать затруднения. Composer решает эту проблему посредством отслеживания версий и зависимостей проектов, а также упрощает процесс поиска, установки и обновления пакетов, требуемых для проекта.
Вам не нужно создавать этот файл вручную, потому что при этом можно легко допустить ошибку в синтаксисе. Composer предлагает интерактивный способ создания нового файла composer.json на основе ввода пользователя. Этот вариант будет полезным, если вы захотите опубликовать свой проект как общедоступный пакет в Packagist. Также Composer автоматически генерирует чистый файл composer.json при запуске команды composer require для добавления зависимости в новом проекте.
Использование Composer для установки пакета в качестве зависимости в проект подразумевает следующие шаги:
Давайте попробуем сделать это на примере демо-приложения.
Приложение преобразует указанное предложение в понятную человеку часть URL-адреса (slug). Как правило, подобные приложения используются для преобразования названия страницы в URL-адрес (например, последняя часть URL для данного обучающего руководства).
Начнем с создания директории для нашего проекта. Мы назовем его slugify.
Теперь нужно найти на Packagist.org пакет, который поможет нам генерировать понятные человеку части URL-адреса. При поиске термина «slug» на Packagist вы получите примерно такой результат:
Вы увидите два числа с правой стороны каждого пакета в списке. Число сверху указывает на количество установок пакета через Composer, а число внизу показывает, какие оценки пакету ставили на GitHub. Как правило, пакеты с большим количеством установок и большим количеством звезд более стабильны, потому что многие люди их используют. Также важно проверить описание пакета на соответствие тому, что вам нужно.
Если требуемый пакет использует системную библиотеку, которая еще не установлена на вашем сервере, вы получите сообщение об ошибке с указанием невыполненного требования:
Для решения проблемы с системной зависимостью мы можем выполнить поиск отсутствующего пакета с помощью apt search :
Определив правильное имя пакета, вы можете использовать apt еще раз для установки системной зависимости:
После завершения установки вы можете запустить команду composer require еще раз:
Файл composer.lock используется для хранения информации о том, какие версии каждого пакета установлены, а также для использования одних и тех же версий пакетов, если кто-либо будет клонировать ваш проект и устанавливать зависимости. Каталог vendor служит местом расположения зависимостей проекта. Папка vendor не обязательно должна использоваться для контроля версий, в нее следует поместить только файлы composer.json и composer.lock.
Ниже представлены примеры, которые помогут лучше понять, как работают ограничения версии в Composer:
Ограничение | Значение | Пример допустимых версий |
---|---|---|
^1.0 | >= 1.0 = 1.1.0 = 1.0 = 1.0.0 = 1.0 = 1.2 vendor/autoload.php в скрипты PHP перед созданием экземпляра любого класса. Протестируем его в нашем демонстрационном приложении. Откройте в текстовом редакторе новый файл с именем test.php : Сохраните файл и закройте редактор. Зависимости нуждаются в обновлениях при выходе новых версий, так что давайте рассмотрим, как решить эту проблему. Шаг 5 — Обновление зависимостей проектаЕсли вам нужно обновить зависимости проекта на более поздние версии, запустите команду update : Вы также можете обновить одну или несколько конкретных библиотек, указав их следующим образом: Обязательно зарегистрируйте файлы composer.json и composer.lock в системе контроля версий после обновления зависимостей, чтобы другие тоже могли установить обновленные версии. ЗаключениеComposer — это мощный инструмент, значительно упрощающий управление зависимостями в проектах PHP. Он дает надежный способ обнаружения, установки и обновления пакетов PHP, от которых зависит проект. В этом обучающем модуле мы узнали, как установить Composer, как включить в проект новые зависимости и как обновлять эти зависимости при выходе новых версий.
|