Как Установить Composer — Полное Руководство

Как Установить Composer — Полное Руководство

В этой статье мы покажем вам, как установить Composer на различные платформы, а также как им пользоваться. Composer — менеджер зависимостей для PHP. Это простой и надёжный инструмент, который разработчики используют для управления внешними пакетами или библиотеками и их интеграции в свои проекты на основе PHP. Таким образом, им не нужно писать веб-страницы или приложения с нуля.

Чтобы помочь вам освоить этот инструмент, мы также покажем, как создать базовый PHP-проект.

Но прежде чем приступить к пробной установке Composer, убедитесь, что у вас есть доступ к интерфейсу командной строки (в вашей системе или на сервере).

Установка Composer

В этом разделе вы узнаете, как установить Composer на общий хостинг и операционные системы, такие как Linux, macOS и Windows.

1. Установка Composer на Общий Хостинг, Linux или macOS

Команды для установки Composer на общий хостинг, Linux (ПК или сервер) и macOS одинаковы.

Обратите внимание, что сейчас в Hostinger действуют скидки на хостинг до 85%!

Обратите внимание, что Composer включен в наши планы хостинга Премиум и Бизнес. Если вы подписаны на один из этих планов, просто пропустите эту часть. Однако, если вы обнаружили, что он устарел, обновите его, выполнив следующую команду:

php composer.phar self-update

Следуйте инструкции, чтобы узнать, как установить Composer в вашей системе:

  1. Подключитесь к вашему хостинг-аккаунту через SSH. Вы можете найти подробные инструкции о том, как это сделать здесь.
  2. Загрузите Composer с официального сайта, используя следующую команду:
    php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  3. Проверьте подпись установщика (SHA-384), чтобы убедиться, что файл установщика не повреждён. Введите:
    php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

    Длинная строка символов в приведённой выше команде («e0012edf…») — подпись установщика. Она меняется каждый раз, когда выходит новая версия Composer. Поэтому обязательно загрузите последнюю версию SHA-384 с этой страницы.

  4. Как только это будет сделано, вы сможете установить Composer локально или глобально. Локальная установка означает, что менеджер зависимостей будет храниться в вашем текущем каталоге, и вы должны будете указать путь перед выполнением соответствующих команд. Между тем, глобальная установка позволяет вам запускать Composer из любой точки вашей системы, сохраняя его в каталоге /usr/local/bin. Вот как реализовать оба метода:
    • Локальная установка:
      php composer-setup.php
    • Глобальная установка:
      php composer-setup.php --install-dir=/usr/local/bin --filename=composer

      Вы получите следующий результат:

      All settings correct for using Composer
      Downloading...
      
      Composer (version 1.10.5) successfully installed to: /usr/local/bin/composer
  5. Как только это будет сделано, удалите установщик:
    php -r "unlink('composer-setup.php');"
  6. Проверьте установку Composer:
    composer

    Командная строка покажет следующий результат:

       ______
      / ____/___ ____ ___ ____ ____ ________ _____
     / / / __ / __ `__ / __ / __ / ___/ _ / ___/
    / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
    ____/____/_/ /_/ /_/ .___/____/____/___/_/
                      /_/
    
    Composer version 1.10.5 2020-02-12 16:20:11

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

Начало работы с Composer на компьютере с Windows немного отличается. На самом деле начать работу с Composer на Windows гораздо проще. Вам не понадобятся какие-либо команды для установки и загрузки.

Просто следуйте инструкции:

  1. Установите на свой компьютер PHP. Мы рекомендуем использовать XAMPP, так как это просто, удобно и быстро.
  2. После установки XAMPP скачайте последнюю версию Composer.
  3. Запустите мастер установки Composer. Когда он попросит вас активировать режим разработчика, пропустите это и продолжайте процесс установки.
    Окно Установщика Composer, Предлагающее Включить Режим Разработчика
  4. Появится другое окно с запросом найти командную строку PHP. По умолчанию она находится в C:/xampp/php/php.exe. Указав местоположение, нажмите «Next» (Далее).
  5. Дальше вас направит к настройкам прокси (Proxy Settings). Оставьте флажок снятым и пропустите эту часть, нажав «Далее». Затем в последнем окне нажмите «Install»(Установить).
  6. После завершения установки откройте командную строку. Нажмите CTRL + R, введите «cmd» и нажмите «ОК».
    Окно Запуска cmd
  7. Введите следующую команду:
    composer

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

Создание и Общая Информация о composer.json

Теперь самое интересное — использование Composer на практике, а именно в вашем PHP-проекте.

Для этого, создайте отдельный файл composer.json. Этот файл служит своего рода шпаргалкой для Composer; он будет загружать для вашего проекта только те пакеты (зависимости), которые в нём упомянуты.

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

У вас есть возможность создать и обновлять файл composer.json самостоятельно. Но так как в наших руководствах мы стараемся показать, как автоматизировать некоторые задачи, этот способ будет неуместен. Мы не рекомендуем создавать файл вручную.

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

Наш проект — это простой таймер PHP, позволяющий разработчикам узнать сколько времени тратиться на выполнение той или иной части кода. Это очень полезно при оптимизации и отладке.

Следуйте пошаговому руководству, чтобы создать свой проект:

  1. Создайте новую папку для проекта. Так как наш проект — это таймер, мы назовём его просто: «phptimer». Для этого впишите эту команду:
    mkdir phptimer
  1. Войдите в созданную папку с помощью команды:
    cd phptimer
  1. Теперь вам нужен пакет или библиотека с уже реализованным таймером PHP. Лучшее место для поиска пакетов — Packagist — официальное хранилище пакетов, созданных для Composer. Здесь вы найдёте все виды библиотек, которые помогут в разработке вашего проекта. Для данного руководство нам понадобиться пакет с таймером. Для этого впишите «timer» в поисковое поле, как на картинке снизу:
    Сайт Packagist
    Как видите, доступно несколько пакетов таймеров, и у каждого есть название и короткое описание того, что он делает. В этом примере мы выбираем phpunit/php-timer, так как он имеет наибольшее количество загрузок и большинство звёзд GitHub.
  2. Укажите нужный пакет, чтобы Composer мог добавить его в ваш проект:
    composer require phpunit/php-timer

    Вывод покажет версию phpunit/php-timer:

    Using version ^1.0 phpunit/php-timer

Символ каретки (^) определяется Composer, как опция максимальной совместимости. Это означает, что Composer всегда будет обновлять пакет, пока не появится версия, которая каким-либо образом вызовет ошибку.

В нашем случае диапазон обновления пакета > = 1.0.9 <2.0.0, так как версия 2.0.0 нарушит обратную совместимость (англ.). Для более подробной информации о версиях Composer, перейдите на страницу документации.

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

Использование Скрипта Автозагрузки

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

Теперь вам необходимо загрузить эти зависимости в ваш PHP-скрипт. Если бы не файл автозагрузки Composer, мы бы потратили на это довольно много времени.

Чтобы добиться автозагрузки, просто напишите следующую строку перед объявлением или созданием любых новых переменных в вашем скрипте:

require 'vendor/autoload.php'

Пример ниже поможет вам лучше это понять.

Допустим, мы хотим протестировать наш проект phptimer:

  1. Откройте текстовый редактор nano, чтобы создать скрипт с названием demo.php.
    nano demo.php

    Затем вставьте в ваш файл следующие строки:

    <?php
    require __DIR__ . '/vendor/autoload.php'
    
    Timer::start();
    
    // your code
    
    $time = Timer::stop();
    
    var_dump($time);
    
    print Timer::secondsToTimeString($time);
  2. Запустите скрипт:
    php demo.php

    Терминал должен показать вывод, подобный этому:

    double(1.0893424438611E-5)
    0 ms

Обновление Зависимостей Вашего Проекта

Теперь нам осталось лишь узнать, как производить обновление пакетов. Сделать это можно двумя способами:

  • Универсальное обновление. Для проверки и обновления всех ваших пакетов и зависимостей, впишите в терминал следующую команду:
    composer update
  • Обновление конкретного пакета. Выполните эту команду, чтобы проверить обновления для одного или нескольких определённых пакетов:
    composer update vendor/package vendor2/package2

Не забудьте поменять vendor/package на имя пакета, который вы хотите обновить.

Команда update также автоматически обновит файлы composer.json и composer.lock для соответствия текущему состоянию вашего проекта.

Заключение

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

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

Из этого руководства вы узнали, как установить Composer и эффективно его использовать. Подводя итог, давайте ещё раз перечислим все шаги:

  1. Узнали, как установить Composer на виртуальный хостинг, Linux, macOS или Windows.
  2. Научились создавать и разобрались с файлом composer.json.
  3. Научились пользоваться скриптом автозагрузки для загрузки зависимостей в файл PHP.
  4. Обновили зависимости нашего проекта.

Мы надеемся, что наше руководство станет для вас стартом для создания не одного прекрасного проекта на PHP. Удачи и не стесняйтесь задавать вопросы в разделе комментариев ниже.