Я хотел использовать класс nusoap_client, поэтому решил добавить NuSOAP библиотека для моего проекта Laravel. Как и другие библиотеки, я использовал страницу чтения файлов github, чтобы сделать это.
composer require econea/nusoap:^0.9.6
Эта библиотека была добавлена в ../vendor/econea/nusoap/src/nusoap.php
, Затем я хотел использовать его в своем контроллере, но я попробовал много способов использовать его, как показано ниже:
use SoapClient;
use vendor\econea\nusoap\src\nusoap.php;
use nusoap.php;
use nusoap;
Я даже пытался загрузить библиотеку в автозагрузке в composer.json подать без удачи. Ларавел повторял одну и ту же ошибку.
Класс ‘App \ Http \ Controllers \ nusoap_client’ не найден
Я признателен за любую помощь, предоставленную, которая предлагает способ использования nusoap_client в моем коде или правильный способ использования библиотеки в моем проекте laravel.
Благодарю.
мой код:
$client = new nusoap_client('example.com/api/v1', 'wsdl');
Правильный синтаксис в верхней части вашего контроллера должен быть:
use nusoap_client;
Это происходит потому, что этот класс не содержит допустимого пространства имен.
Итак, вам нужно импортировать этот PHP-файл в ваш скрипт, используя функцию require.
Чтобы решить эту проблему в laravel, просто импортируйте ваш файл, используя composer, например:
"autoload": {
"files": ["path/to/vendor/script"]
}
С помощью автозагрузки файла вы можете создать экземпляр класса в любом классе сценария вашего проекта.
Но я не думаю, что это хороший способ работать с современным PHP.
Я знаю другую библиотеку, которая работает с SOAP: https://github.com/artisaninweb/laravel-soap
Это обертка для SoapClient http://php.net/manual/pt_BR/class.soapclient.php, базовый класс PHP, который предоставляет мыльный клиент.
Надеюсь, мой вклад может быть полезным и мой английский понятен.