Symfony — вручную добавить phpxmlrpc к поставщику

Мне нужно использовать XML-RPC в моем проекте. Я нашел библиотеку phpxmlrpc (http://phpxmlrpc.sourceforge.net/), и мне нужно ее добавить поставщику. Я скопировал файлы в папку поставщика (/vendor/phpxmlrpc/), и мне нужно увидеть класс xmlrpc_client в моем контроллере. Но я не могу справиться с тем, как отредактировать autoload.php, чтобы увидеть класс, после нескольких попыток я все еще получаю сообщение «Попытка загрузить класс xmlrpc_client» из глобального пространства имен. Вы забыли оператор «использовать»? поэтому я почти уверен, что в моей структуре есть какой-то беспорядок. Буду очень признателен за любую помощь.


person Karel Attl    schedule 05.02.2016    source источник
comment
попробуй composer dump-autoload   -  person Rob    schedule 05.02.2016


Ответы (2)


Вы должны использовать инструменты установки композитора для интеграции стороннего кода в свой проект как можно больше времени.

Для XML-RPC у вас есть этот пакет: Symfony-rpc-bundle

Когда вы устанавливаете с помощью composer install your bundle, в вашем проекте symfony выполняется множество трюков. Не забудьте добавить этот пакет в ваш файл AppKernel.php.

Благодаря этому ваш код для XML-RPC становится более устойчивым и стабильным.

person darkomen    schedule 05.02.2016
comment
Я пытаюсь максимально использовать все пакеты с композитором, это первая ситуация для меня - предложенный вами пакет не сработал для меня, а этот phpxmlrpc сработал. Вот почему я пытаюсь интегрировать его в Symfony, но без каких-либо пока успех :/ - person Karel Attl; 05.02.2016

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

При проверке информации об этой библиотеке просто убедитесь, что вы ищете последнюю версию на GitHub, а не на SourceForge.

person gggeek    schedule 24.11.2017
comment
Я использовал композитор для установки phpxmlrpc/phpxmlrpc - все выглядит нормально. У меня включена автозагрузка, так как я использую ее с другими установленными библиотеками композитора. Однако, когда я пытаюсь создать новый xmlrpc_client, он не может найти класс. - person muz the axe; 22.02.2018
comment
Это потому, что вы не должны использовать устаревшие классы, такие как xmlrpc_client. Вместо этого следует использовать новые классы, такие как XmlRpc\Client. Унаследованные классы сохраняются только для совместимости со старым кодом. - person gggeek; 23.02.2018
comment
Да - полезно знать. Теперь у меня есть работающая тестовая система, использующая классы Client и Server. Все идет нормально. - person muz the axe; 24.02.2018