Сначала извините за мой плохой английский, я говорящий по-французски ^^.
Я работаю с Restler в качестве веб-сервиса в моей среде eZpublish.
Когда я установил Restler, я также установил Composer.
В индексном файле я использую методы Restler и API-классы, я включаю как ezpublish autoload, так и restler, но у меня конфликт. Когда я удаляю автозагрузку ezpublish, классы API не распознаются. Я хочу знать, как я могу в composer.json добавить все классы своего приложения.
в файле Composer.json у меня есть
"autoload":{
"psr-0":{
"Luracast\\Restler": "vendor/"}
`Я хочу сменить вендора / по расширению /, потому что все классы находятся в расширении, классы Рестлера тоже. Я просто хочу иметь все классы с одним пространством имен. Не могли бы вы мне помочь, пожалуйста. Заранее спасибо.
Предполагая, что вы используете eZ Publish Legacy (4.x), вам не нужно добавлять autoload
настройки restler в вашем корневом composer.json, просто добавьте его как требование и позвольте composer обработать все остальное:
{
"require": {
"luracast/restler": "~3.0"}
}
В вашем index.php
Вы должны быть в состоянии использовать
include __DIR__ . '/vendor/autoload.php';
в дополнение к автозагрузке eZ Publish.
Для ваших пользовательских классов внутри вашего расширения вы должны выполнить
php bin/php/ezpgenerateautoloads.php -e
чтобы они были найдены автозагрузчиком eZ Publish.
Других решений пока нет …