从肥皂响应中提取价值

Posted

技术标签:

【中文标题】从肥皂响应中提取价值【英文标题】:Extract value from soap response 【发布时间】:2020-08-18 13:29:28 【问题描述】:

我需要帮助来。

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

我真正需要的是: $用户名=用户 $message=成功

【问题讨论】:

响应如下[1]?这是什么意思 感谢您的回复 :),我真正需要的是:$username=user $message=success 【参考方案1】:

好的,现在我看到了,这很容易

假设您已将 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 convert XML to JSON

我将其作为数组进行,因为有时对象有点难以处理。您可以轻松地只做第一行并将其作为一个对象来处理。 (如果这些是您需要的唯一变量,那么数组可以正常工作。例如:“计划”数据将在数组中出现两次,因为它会被弄乱)

可能会出现一些问题,例如 MESSAGE 未出现或 XML 返回失败,但我认为您应该知道如何围绕丢失的数据编写代码。

【讨论】:

【参考方案2】:

也许在此处包含 SOAP 响应,这对以后来的人会有所帮助。至于您的问题,您是否使用特定语言?这样会更容易回答。

如果您正在寻找查看使用的方式可以使用这个网址:https://codebeautify.org/xmlviewer

【讨论】:

以上是关于从肥皂响应中提取价值的主要内容,如果未能解决你的问题,请参考以下文章

从一个属性中提取价值到另一个属性中

Spring Webflux:从 Mono 中提取价值

如何从 iOS 中的 JSON 响应中获取价值

当保持在一条线上时收集总价值最大的卡片(仅从角落提取)[重复]

如何使用目标 c 从 xml 信封中提取 xml 肥皂体?

如何从 JSON 数据中提取国家/地区