我没有太多使用SOAP的经验,但我需要为我的工作和使用特定的SOAP wsdl构建验证器。
我已经设置了连接和调用,一切正常但我收到的响应数据是我假设的XML,这里只是输出的一小部分:
<user id=”54354334543”>
<firstname>My firstname</firstname>
<lastname>My lastname</lastname>
<email>my_email@text.com</email>
<nickname>My Nickname</nickname>
<source>Update_and_add</source>
</user>
此回复是验证的一个步骤,因此我可以检索单个项目,例如和,并将其用于进一步查找。
所以我的问题是,我如何解析这个以获取项目?我尝试了不同的方法并将其转换为数组,但我没有运气这样做。
非常感谢任何建议或帮助。
的问候,
- 梅斯蒂卡
答案 0 :(得分:1)
$xml = '<user id="54354334543">
<firstname>My firstname</firstname>
<lastname>My lastname</lastname>
<email>my_email@text.com</email>
<nickname>My Nickname</nickname>
<source>Update_and_add</source>
</user>';
print_r(json_decode(json_encode(simplexml_load_string($xml))));
输出:
stdClass Object
(
[@attributes] => stdClass Object
(
[id] => 54354334543
)
[firstname] => My firstname
[lastname] => My lastname
[email] => my_email@text.com
[nickname] => My Nickname
[source] => Update_and_add
)
所以你可以这样做:
$data = json_decode(json_encode(simplexml_load_string($xml)));
echo $data->nickname;
答案 1 :(得分:0)
答案 2 :(得分:0)
试试这个
<?php
$k = '<user id="54354334543">
<firstname>My firstname</firstname>
<lastname>My lastname</lastname>
<email>my_email@text.com</email>
<nickname>My Nickname</nickname>
<source>Update_and_add</source>
</user>';
$xml = simplexml_load_string($k);
echo $id = $xml['id'];
echo "<br>".$firstname =$xml->firstname;
?>
输出
54354334543
My firstname