我正在尝试用PHP语言解析GeoIP应用程序接口的XML输出:
<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新手,我不知道如何使用我一直使用的simplexml_load_file PHP函数来处理额外的GML组件。如何使用simplexml_load_file从这个XML中提取城市名称?
发布于 2011-06-25 05:22:36
我用一个网络链接中的原始GML文件来尝试你的案例,它成功了。在您提供的GML中(可能与您测试时使用的GML相同),应该存在一个影响其一致性的问题。所以SimpleXML不能工作了。
您的PHP代码应该没有问题。我已经成功地使用SimpleXML处理大型GML文件。与XML没有太大不同。
https://stackoverflow.com/questions/5273062
复制相似问题