我试图从 Google 地图 REST API 返回的 XML中获取<address_component>
对应的元素内的值。<type>postal_code</type>
例如,在下面:
...
<result>
<type>
route
</type>
<formatted_address>
Rose Ln, Liverpool, Merseyside L18 5ED, UK
</formatted_address>
<address_component>
<long_name>
Rose Ln
</long_name>
<short_name>
Rose Ln
</short_name>
<type>
route
</type>
</address_component>
<address_component>
<long_name>
Liverpool
</long_name>
<short_name>
Liverpool
</short_name>
<type>
locality
</type>
<type>
political
</type>
</address_component>
<address_component>
...
</address_component>
<address_component>
...
</address_component>
<address_component>
<long_name>
L18 5ED
</long_name>
<short_name>
L18 5ED
</short_name>
<type>
postal_code
</type>
</address_component>
<address_component>
...
</address_component>
...
</result>
... more result elements
我们看到了其中一个<result>
元素。嵌套在里面的是多个<address_component>
元素。其中之一是<type>postal_code</type>
。
我的问题是我将如何区分这些相同的命名元素并仅选择归因于它的<address_component>
元素<type>postal_code</type>
?
如果它们被唯一命名,那将是一个简单的例子:
foreach ($address_rsponse->result as $address_option) {
$val = $address_option->some_unique_name;
}
但是,当命名相同时,我对通过子元素挑选元素的方法感到困惑。
任何人都可以阐明正确的方法。
谢谢