迭代这些 XML 片段的正确方法是什么?
你好呀。
我有一个 Web 服务,可以为我带来一些客户进行集成。
如果 werbservice 只返回一个客户端,结果是这样的:
<ClientsToIntegrateResult>
<Client>
<Id>1</Id>
<Name>John</Name>
</Client>
</ClientsToIntegrateResult>
如果 webService 返回多个客户端,结果如下:
<ClientsToIntegrateResult>
<Client>
<Id>1</Id>
<Name>John</Name>
</Client>
<Client>
<Id>2</Id>
<Name>Peter</Name>
</Client>
</ClientsToIntegrateResult>
我有这段 PHP 代码来读取来自 webService 的结果,其中 $myWSResponse 是我的 webService 的实例:
$clients = $myWSResponse->ClientsToIntegrateResult;
foreach ($clients->Client as $client )
{
print_r($client); //Print the client node and its properties if more than one client, and prints each property of client node if only one client.
print_r($client->Id); //Give me error if only one client, because Id will not exist.
}
我的问题是当 web 服务只返回一个客户端时我的代码不起作用。当我有多个客户时,我的 foreach 可以正常工作,正如我所愿,因为$clients->Client
将是一个数组。但是当 webService 返回时,只有一个客户端$clients->Client
将是节点本身,我的代码会抛出错误。
我能做些什么来解决它?
我不习惯 PHP 开发,但习惯于 .NET 开发。任何帮助都是宝贵的。