解析GML用PHP

问题描述:

我试图解析GeoIP的API的XML输出与PHP:解析GML用PHP

<HostipLookupResultSet version="1.0.1" xsi:noNamespaceSchemaLocation="http://www.hostip.info/api/hostip-1.0.1.xsd"> 
<gml:description>This is the Hostip Lookup Service</gml:description> 
<gml:name>hostip</gml:name> 
− 
<gml:boundedBy> 
<gml:Null>inapplicable</gml:Null> 
</gml:boundedBy> 
− 
<gml:featureMember> 
− 
<Hostip> 
<ip>111.69.232.180</ip> 
<gml:name>(Unknown City?)</gml:name> 
<countryName>(Unknown Country?)</countryName> 
<countryAbbrev>XX</countryAbbrev> 
<!-- Co-ordinates are unavailable --> 
</Hostip> 
</gml:featureMember> 
</HostipLookupResultSet> 

作为一个完整的XML新手,我不;知道如何处理与额外的GML组件我一直在使用simplexml_load_file PHP fuynction。我如何使用simplexml_load_file从这个XML中提取城市名称?

+1

的可能重复的[hostip.info - 解析与SimpeXML API响应(http://stackoverflow.com/questions/4828195/hostip-info-parse-api-response-with-simpexml)更 – Gordon 2011-03-11 13:54:19

+0

在HTTP:/ /stackoverflow.com/search?q=php+gml – Gordon 2011-03-11 13:55:02

我试着从网页链接的原始GML文件的情况下,它解决了。在你提供的GML中(也许你测试的是相同的),应该有一个影响它的一致性的问题。所以SimpleXML无法工作。

您的PHP代码应该没有问题。我已经成功地使用SimpleXML来处理大型GML文件。与XML没有多大区别。