ОСНОВНОЕ

WORDPRESS

Операционные системы

Базы данных

Фреймворк Bootstrap

Человек был так умен, что стал почти ни к чему не пригоден (Г. Лихтенберг).

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

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (4 оценок, среднее: 5,00 из 5)
Загрузка...

Статья опубликована: 25 марта 2017

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

Введение

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

Этот урок покажет, как установить и как начать работу с композитором на сервере Debian 8.

Предпосылки

Для этого урока вам понадобятся:

Шаг 1 – Установка зависимостей

Перед тем, как скачать и установить Composer, мы должны убедиться, что наш сервер имеет все необходимые установленные зависимости.

Во-первых, необходимо обновить кэш менеджер пакетов.

 

Теперь, давайте установим зависимости. Нам понадобится curlдля того, чтобы загрузить композитор и php5-cli, пакет PHP, для установки и запуска. Композитор использует git, систему управления версиями, чтобы загрузить проект зависимостей. Вы можете установить все три из этих пакетов сразу же с помощью этой команды:

 

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

Шаг 2 – Загрузка и установка Композитора

Мы будем следовать инструкциям, как написано в официальной документации композитора с небольшой модификацией для глобальной установки Composer в/usr/local/bin. Это позволит каждому пользователю на сервере использовать Composer.

Загрузите программу установки в каталог/tmp.

 

Посетите страницуpubkeys композитора и скопируйте строку SHA-384 в верхней части. Затем выполните следующую команду, заменив строку sha_384_string.

 

Эта команда проверяет хэш загруженного файла с правильным хэшем с сайта композитора. Если он соответствует, он напишет чтоустановщик проверен. Если он не соответствует, он будет печатать установщик поврежден, в этом случае вы должны дважды проверить, что вы скопировали строку SHA-384 правильно.

Далее, мы установим Composer. Для того, чтобы установить его на глобальном уровне в рамках /usr/local/bin, мы будем использовать флаг--install-dir; --filenameсообщает установщику имя исполняемого файла композитора. Вот как сделать это в одной команде:

 

Вы увидите сообщение вроде следующего:

Вывод
 

Вы можете убедиться, что Composer был правильно установлен, проверив его версию.

 

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

 

И, наконец, вы можете безопасно удалить скрипт установки, так как вам он больше не нужен.

 

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

Шаг 3 – Генерация файла composer.json

Для того, чтобы использовать Composer для проекта, вам понадобится файлcomposer.json. Файлcomposer.jsonсообщает Composer, какие зависимости его нужно скачать для вашего проекта, и какие версии каждого пакета разрешено устанавливать. Это важно, чтобы сохранить ваш проект последовательным и избежать установки нестабильных версий, которые потенциально могут привести к обратной проблемы совместимости.

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

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

  • Определить, какие библиотеки необходимы приложению
  • Проверка подходящих библиотек с открытым исходным кодом на Packagist.org, официальный репозиторий для Composer
  • Выбор пакет, который вы хотите зависеть
  • Запуск composer require,включение зависимости в файлcomposer.jsonи установка пакета

Мы посмотрим, как это работает на практике с помощью простого демонстрационного приложения.

Целью данного приложения является превратить данное предложение в slug, который является URL-дружеской строкой. Это используется для преобразования названий страниц в пути URL (как финальная часть URL для этого урока).

Давайте начнем с создания каталога для проекта. Мы будем называть его slugify :

 

Далее, давайте искать библиотеки, которые мы должны использовать.

При поиске пакетов на Packagist

Далее, мы будем искать Packagist для пакета, чтобы помочь произвести slug. Если вы ищете “slug“, вы увидите список пакетов. На правой стороне каждого пакета в списке, вы увидите два номера: номер на вершине, сколько раз был установлен пакет и номер внизу показывает, сколько раз пакет был звездой на GitHub.

Вообще говоря, пакеты с большим количеством установок и звезды, как правило, более стабильны, потому что многие люди их используют. Важно также, проверить описание пакета, чтобы убедиться, что пакет действительно тот, что вы ищете.

То, что нам нужно, это простой конвертер строки вslug. В качестве примера здесь, мы будем использовать пакет cocur/slugify. Вроде бы хороший пакет, потому что он имеет разумное количество установок и звезд.

Вы заметите, что пакеты на Packagist имеют имя поставщика и имя пакета. Каждый пакет имеет уникальный идентификатор (пространства имен) в том же формате GitHub использует для своих хранилищ: vendor/package. Библиотека, которую мы хотим установить, использует пространство имен cocur/slugify. Пространство имен является тем, что нам нужно для того, чтобы потребовать пакет в нашем проекте.

Теперь, когда мы определили библиотеку мы хотим добавить его в файлcomposer.json.

Требование пакета

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

Вывод

 

Как вы можете видеть из вывода, композитор автоматически решил, какая должна быть использована версия пакета. Если вы посмотрите каталог вашего проекта сейчас, он будет содержать два новых файла: composer.jsonи composer.lock, и каталог /vendor:

Вывод

 

Файл composer.lockиспользуется для хранения информации о том, какие установлены версии каждого пакета, и убедится, что одни и те же версии используются, если кто – то клонирует ваш проект и устанавливает его зависимости. Каталог /vendor, где расположены зависимости проекта. Каталог /vendorне должен совершаться в системе контроля версий; вам нужно только включить файлыcomposer.jsonи composer.lock.

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

Вы можете заметить , что файлcomposer.lockсодержит конкретную информацию о зависимости версии PHP библиотек нашего проекта. Композитор использует специальный синтаксис для ограничения библиотек для конкретных версий. Давайте посмотрим , как это работает.

Понимание ограничений версий

Если проверить содержимое вашего файлаcomposer.json, то вы увидите что – то вроде этого:

 

Вывод
 

Существует символ вставки, ^перед номером версии. Композитор поддерживает несколько различных ограничений и форматов для определения требуемой версии пакета, для того, чтобы обеспечить гибкость в то же время сохраняя проект стабильным. Оператор каретка используется в автоматически сгенерированном файлеcomposer.json иявляется рекомендуемым оператором для обеспечения максимальной совместимости, после семантического контроля версий. В этом случае она определяет 1.3 в качестве минимального совместимой версии, а также позволяет обновления к любой будущей версии ниже 2.0 . Вы можете прочитать более подробную информацию о основных версиях в документации версий Composer.

До сих пор мы видели, как добавлять и ограничивать PHP библиотеки в нашем проекте, нуждается в Composer, используя файлcomposer.json. Следующим шагом является использование этих библиотек внутри нашего приложения. Для этой цели, композитор дает файлautoload.php, который облегчает процесс загрузки внешних библиотек.

Шаг 4 – Включение автозагрузочного скрипта

Композитор предоставляет скрипт автозагрузки, который вы можете включить в свой проект, чтобы получить самозагружатся бесплатно. Это делает его гораздо проще работать с зависимостями и определить свои собственные пространства имен. Единственное, что вам нужно сделать, это включить файлvendor/autoload.phpв ваших скриптах перед любым классом экземпляра.

Давайте вернемся к примеру приложения slugify. Используйтеnanoили ваш любимый текстовый редактор, чтобы создать сценарийtest.php, где мы будем использовать библиотекуcocur/slugify.

test.php

 

Вы можете запустить скрипт в командной строке с помощью:

 

Это должно произвести вывод:

Вывод
Вы полностью настроить композитора, но читайте дальше, чтобы узнать, как сохранить установки.

Шаг 5 – Обновление Composer и зависимости проекта (Необязательно)

Чтобы обновить Composer, вы можете использовать встроенную команду self-update. Поскольку композитор установлен в глобальном масштабе, необходимо выполнить команду с привилегиями суперпользователя.

 

Вы можете обновить один или несколько специфических библиотек, перечислив их конкретно вcomposer update.

 

Если вы хотите обновить все ваши зависимостей проекта, запустите командуupdate.

 

Это будет проверять наличие новых версий библиотек, необходимых вам в вашем проекте. Если новая версия найдена, и она будет совместима с версией ограничения, определенного в файлеcomposer.json, он заменит предыдущую версию установленной. Файлcomposer.lockбудет обновлен, чтобы отразить эти изменения.

Вывод

Композитор является мощным инструментом, каждый разработчик PHP должен иметь в его своем комплекте необходимых программ. Помимо предоставления простой и надежный способ для управления зависимостями проекта, он также устанавливает новый стандарт де-факто для совместного использования и обнаружения PHP пакетов, созданных сообществом.

На этом уроке мы кратко описали основы Composer: как установить его, как создать проект и найти пакеты для него, и как сохранить его. Чтобы узнать больше, вы можете изучить официальную документацию Composer.

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


Читайте также

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

Войти с помощью: 

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

Простая логическая игра "Поймай кота". Задача игры окружить кота точками так, чтобы он не смог убежать с поля. Постигла неудача - начни игру снова!

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close