Richter web-программист: создание сайтов, написание интернет-магазинов, создание скриптов на PHP, MySQL, JavaScript. Качественная верстка HTML, CSS. Системы управления сайтом, CMS. Оптимизация для поисковиков
English version

Статьи веб-программиста: Composer: начало работы

Один из проектов
Официальный корпоративный сайт ОАО "ЕлецГидроАгрегат" Разработаны новости, механизм просмотра раздела "Пресса о нас" (каждая публикация может быть легко изменена редактором без внесения изменений в основной код), механизм просмотра статей газеты "Машиностроитель" (все статьи могут быть оперативно изменены редактором), система вакансий с администрированием через web-интерфейс, система вывода списка филиалов.
Система построения сайта SBS "Web-Pro"
SBS Web-Pro Средство для создания и удобного управления сайтом, имеющее расширенные по сравнению с CMS (Content Management System) характеристики. Более 5 лет успешного использования. Подробнее
Пишите!
Telegram
@richter_a
ICQ
176621941

Composer: начало работы

К списку статей

Composer это менеджер пакетов для библиотек и проектов на PHP. Его работа напоминает работу менеджеров пакетов программ в Unix-системах. Менеджер пакетов нужен для упрощенной установки необходимых для проекта библиотек (= пакетов) и автоматического поиска и установки зависимых пакетов.
Вместо ручного поиска по сайтам, распаковки и подключения файлов библиотек достаточно использовать менеджер - он сам скачивает и устанавливает искомый пакет, а также пакеты, от которых он зависит. Пакеты же хранятся в централизованных Git-хранилищах.
Также Composer позволяет поддерживать актуальность установленных пакетов, проверяя их версии и совместимость.

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

Установка Composer

Composer представляет собой файл типа phar - composer.phar.

Устанавливать его будем на Windows-систему, т.к. часто разработка идёт именно на Windows, и только на конечной стадии проект заливается на Unix-сервер. Установка производится при обычно установленном PHP.

  • включаем в php.ini расширение: extension=php_openssl.dll
  • создаем папку проекта
  • запускаем командную строку (Win+R) и переходим в папку проекта
  • скачиваем файл composer.phar, для этого выполняем:

    php -r "readfile('https://getcomposer.org/installer');" | php

Всё, Composer установлен и готов к работе. Формат его использования:

php composer.phar <команда>

Если хотим установить глобально, что запускался просто composer ..., читаем здесь.

Итак, предположим, что у нас есть проект, и мы хотим установить в него какой-то пакет. Посмотрим, как это делается.

Установка пакета

  • в командной строке в папке проекта выполняем (пример для установки JQuery):

    php composer.phar require components/jquery

    Будут созданы файл composer.json (его можно создать и вручную, а потом выполнить composer update), папка vendor, и в неё скачан пакет.
    При этом осуществляется поиск зависимых пакетов.
    Каждый пакет кладётся в свою папку: первой идет папка с именем разработчика, а в ней уже находятся папки пакетов.
    Как вариант при загрузке после имени можно указывать :* для загрузки любых версий stability.
    Пакеты можно искать на https://packagist.org

  • в файле нашего проекта, где мы хотим использовать пакет, пишем:

    require __DIR__ . '/vendor/autoload.php';

    Во включаемом файле выполняется автозагрузчик Composer'а, который осуществляет автозагрузку классов установленных пакетов, а информацию об этом он берёт из файлов автозагрузки в vendor/composer.
    Всё, уже можно пользоваться классами установленного пакета.

Удаление пакета

Аналогично установке, но команда remove.

Проверка обновлений

Выполняем php composer.phar update или composer update <пакет>

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

Также пригодится:
Как создать свой проект для Composer

© 2017 Richter
Распространение только с разрешения автора
Рейтинг: 0.0. Голосов: 0
(0) Добавить комментарий

Наверх