gpt4 book ai didi

返回单个 XML 字符串的 PHP SoapClient() 函数

转载 作者:行者123 更新时间:2023-12-04 17:07:10 24 4
gpt4 key购买 nike

我在使用 PHP SoapClient() 函数时遇到问题。 SOAP 请求成功,但响应作为一个对象返回,该对象包含带有键“any”的单个 XML 字符串。例如:

<?php
$params = array('strUsername' => 'Test',
'strPassword' => 'Test');

$client=new SoapClient('http://www.example.com/webservice.asmx?wsdl',
array('features' => SOAP_SINGLE_ELEMENT_ARRAYS));

$result = $client->strExampleCall($params);
print_r($result);
?>

输出如下:

stdClass Object
(
[strExampleCallResult] => stdClass Object
(
[any] => <Response xmlns="" release="1.0.0" environment="Production" lang="en-GB"><ApplicationArea><Sender><SenderId>0</SenderId><ReferenceId>0</ReferenceId></Sender><Destination><DestinationId>1</DestinationId></Destination></ApplicationArea><DataArea><Result>1</Result></DataArea></Response>
)
)

随后,我无法像预期的那样访问对象的属性:

echo $result->strExampleCallResult->Response->DataArea->Result;

为什么 PHP 不将 SOAP 响应解析为返回对象的属性?

我使用的是 PHP 5.3.0,相信 SOAP 服务器正在运行 .NET。

最佳答案

我现在已经解决了这个问题。

第三方 SOAP 服务器旨在返回嵌套在 SOAP 响应中的 XML 格式的数据。我现在正在使用 SimpleXML 解析 XML 响应。

关于返回单个 XML 字符串的 PHP SoapClient() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2457011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com