Может войдёшь?
Черновики Написать статью Профиль

Composer в Laravel

перевод

Одна из возможностей, которая мне часто требуется — удобное использование Composer для управления как собственными, так и сторонними библиотеками — например, компонентами Symfony. Немного копания и кода и я достиг этой цели — и в этой статье я проведу вас к ней.

Для начала установим Composer:

sh# перехходим в папку проекта:
cd /path/to/laravel
# устанавливаем Composer:
curl -s http://getcomposer.org/installer | php

Теперь создадим файл composer.json в папке установки Laravel. Вот как выглядит мой:

{
  "require": {
    "php": ">=5.3.0",
    "kloy/cli": "0.0.*",
    "vendor/package": "version",
    ...
  }
}

Теперь когда у нас есть composer.json мы можем установить требуемые пакеты Composer:

shphp composer.phar install

Пакеты устанавливаются в папку vendors. Теперь настроим зарегистрируем их в автозагрузчике — редактируем paths.php:

PHP
// --------------------------------------------------------------
// Путь к папке пакетов Composer
// --------------------------------------------------------------
$paths['composer'] = 'vendor';

Наконец, последнее, что осталось — добавить подключение автозагрузчика в public/index.php:

PHP
// --------------------------------------------------------------
// Установка системных путей Laravel
// --------------------------------------------------------------
require '../paths.php';

// --------------------------------------------------------------
// Автозагрузка пакетов Composer
// --------------------------------------------------------------
require path('composer').DS.'.composer'.DS.'autoload.php';

Если вы хотите сделать доступным автозагрузчик Composer для «Artisan» добавьте такой же require в файл artisan. Можно было бы поместить его в start.php, но это потребовало бы изменения всех имеющихся и будущих пакетов.

Поздравляю! Теперь вы можете использовать библиотеки Composer как в своём приложении, так и в своих установленных пакетах.

Как вы считаете, полезен ли этот материал? Да Нет

Написать комментарий

Разметка: ? ?

Авторизуйся, чтобы прокомментировать.