我想解析 google geocode api 响应,但结果的结构并不总是相同的。例如,我需要知道邮政编码,但它有时在Locality/DependentLocality/PostalCode/PostalCodeNumber
节点中,有时在Locality/PostalCode/PostalCodeNumber
节点中。我真的不知道这背后的逻辑,只想获取PostalCodeNumber
节点的值,不管它到底在哪里。我可以用 XPath 做吗?如果是这样,怎么做?
更新
尝试过,//PostalCodeNumber
但它返回一个空数组。代码片段如下:
$xml = new \SimpleXMLElement($response);
var_dump($xml->xpath('//PostalCodeNumber'));
这$response
是http://maps.google.com/maps/geo?q=1055+Budapest&output=xml的内容
(复制粘贴网址而不是点击它,因为一些字符问题...)