Многоцелевой установке и использовании поставщика от композитора
Я разрабатываю модуль Prestashop (PS), но я хочу использовать composer для установки некоторых зависимостей.
Я нашел некоторые проблемы для выполнения этой задачи. Прежде всего, как включить класс autoload внутри поставщика, чтобы использовать пакет? а во-вторых, как использовать его в моем модуле?
Не могли бы вы привести мне пример?


Ответы - Многоцелевой установке и использовании поставщика от композитора / Prestashop install and use vendor from composer

15.11.2015 04:13:14
Просто включите autoload.php
файл в вашем файле модуля:
<?php
require_once('vendor/autoload.php');
class MyModule extends Module
{
...
}
Поскольку ваш файл модуля будет (и должен быть) всегда загружаться первым, это должно быть нормально.
Я считаю, что не должно быть никаких конфликтов между двумя такими модулями, которые используют composer autoload, потому что сгенерированные автозагрузчики имеют уникальные имена классов, А ComposerAutoload
Редактировать:
Если вы создаете пользовательский сайт (а не только модуль), я бы посоветовал использовать single composer root в корневом каталоге:
/modules/mymodule/mymodule.php
/modules/mymodule/composer.json
/modules/mymodule/vendor/autoload.php
Тогда я бы добавил /composer.json
в пользовательский файл конфигурации (проверка require ../vendor/autoload.php
, какие пользовательские конфигурационные файлы загружаются)