1
我从SOAP WSDL呼叫响应:PHP SOAP响应 - 如何解读它作为变量
$client = new SoapClient($settings['address']);
$params = new stdClass();
$params->Username = $settings['username'];
$params->Password = $settings['password'];
var_dump($client->Get_Brands($params));
下面是响应。如何在PHP中实际读取它?我是否需要用DOMDocument来遍历它,或者是否有像返回SOAP结果到对象或数组那样的东西?
<xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Table">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:decimal" minOccurs="0"/>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<DocumentElement xmlns="">
<Table diffgr:id="Table1" msdata:rowOrder="0">
<ID>1</ID>
<Description>Alfa Romeo</Description>
</Table>
<Table diffgr:id="Table2" msdata:rowOrder="1">
<ID>2</ID>
<Description>Alpina</Description>
</Table>
</DocumentElement>
</diffgr:diffgram>
什么是有效的WSDL定义以及为什么我应该通过它?第二个论点是什么和什么额外的通过?你什么意思不需要解析?我得到的Web服务只是返回XML数据库行,这是我可以得到这些信息的唯一方式,但是有没有一些类为程序员提供序列化XML输出缓解? – 2014-09-29 22:45:41