【发布时间】:2014-08-21 10:16:18
【问题描述】:
我有 xml/gpx 文件:
<?xml version="1.0" encoding="utf-8"?>
<gpx xsi:schemaLocation="http://www.topografix.com/GPX/1/1">
<metadata>
....
</metadata>
<trk>
<trkseg>
<trkpt lat="50.04551333333333" lon="14.434101666666667">
<ele>282</ele>
<time>2014-06-30T20:56:03.92</time>
<extensions>
<gpxtpx:TrackPointExtension>
<gpxtpx:hr>100</gpxtpx:hr>
</gpxtpx:TrackPointExtension>
</extensions>
</trkpt>
...
</gpx>
加载:
$xml=simplexml_load_file($gpx_file);
解析女巫
foreach($xml->trk->trkseg->trkpt as $point){}
没关系。但我无法获得 /extension//extension/ 的内容
print_r($point) 是
SimpleXMLElement Object
(
[@attributes] => Array
(
[lat] => 50.04527
[lon] => 14.433993333333333
)
[ele] => 280.5
[time] => 2014-06-30T20:57:21.71
[extensions] => SimpleXMLElement Object
(
)
)
我无法获得 SimpleXMLElement 对象。
Print_r($point->扩展名是:
SimpleXMLElement Object
(
)
我尝试Converting a SimpleXML Object to an Array 和其他类似方式,但我失败了 - 输出为空数组。
进入字符串/数组的任何想法/方法?
示例 gpx 位于 www.vovcinec.net/gpx/e.gpx (~700kB)
【问题讨论】:
-
您的 XML 使用命名空间,请参阅 stackoverflow.com/a/24101080/2265374 示例。
-
SimpleXMLElement 对象([@attributes] => 数组([lat] => 50.04527 [lon] => 14.433993333333333)[ele] => 280.5 [time] => 2014-06-30T20:57 :21.71 [extensions] => SimpleXMLElement Object ( ) ) 如何获取 lat 和 lng ??????请帮帮我