Извлечь значение из soap ответа - PullRequest
0 голосов
/ 04 мая 2020

Мне нужна помощь для извлечения значения из ответа soap.

https://i.stack.imgur.com/djv5y.jpg

Что мне точно нужно: $ username = user $ message = успех

Ответы [ 2 ]

0 голосов
/ 04 мая 2020

Хорошо, теперь, когда я это вижу, это довольно просто

Если вы загрузили SOAP XML в переменную, давайте назовем его $ xml_string

$xml = simplexml_load_string($xml_string); // Load it as an object
$xmlarray = json_decode(json_encode($xml),TRUE); // Change it into an array

Тогда Переменные, которые вы ищете, находятся в

 $username = $xmlarray['UserName'];
 $message = $xmlarray['response']['MESSAGE'];

Кстати. Это решение можно найти здесь PHP конвертировать XML в JSON

Я сделал это как массив, поскольку иногда объекты немного сложны для обработки. Вы можете легко сделать первую строку и обратиться к ней как к объекту. (Если это единственные переменные, в которых вы нуждаетесь, тогда массив работает нормально. Например: данные «Плана» будут перепутаны в массиве, когда они появляются дважды)

Могут быть некоторые проблемы, такие как СООБЩЕНИЕ не появляется или XML возвращает ошибку, но я думаю, вы должны знать, как кодировать недостающие данные.

0 голосов
/ 04 мая 2020

Возможно, включите сюда ответ SOAP, который будет полезен для тех, кто придет в будущем. Что касается вашего вопроса, вы используете определенный язык? Это облегчило бы ответ.

Если вы ищете способ просмотра использования, используйте этот URL: https://codebeautify.org/xmlviewer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...