0
儀解析XML GPX數據我有這個GPX文件:使用SimpleXML
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<gpx xmlns="http://www.topografix.com/GPX/1/1" .. >
<metadata>
<link href="http://www.garmin.com">
<text>Garmin International</text>
</link>
<time>2017-03-13T14:42:05Z</time>
</metadata>
<trk>
<name>2017-03-13 15:41:57</name>
<extensions>
<gpxx:TrackExtension>
<gpxx:DisplayColor>Cyan</gpxx:DisplayColor>
</gpxx:TrackExtension>
<gpxtrkx:TrackStatsExtension>
<gpxtrkx:Distance>6482</gpxtrkx:Distance>
<gpxtrkx:MovingTime>4474</gpxtrkx:TimerTime>
</gpxtrkx:TrackStatsExtension>
</extensions>
<trkseg>
<trkpt lat="47.1075830329" lon="15.4409365822">
<ele>466.49</ele>
<time>2017-03-13T13:26:10Z</time>
</trkpt>
<trkpt lat="47.1075813565" lon="15.4409420304">
<ele>466.49</ele>
<time>2017-03-13T13:26:11Z</time>
</trkpt>
...
</trkseg>
</trk>
</gpx>
我想用SimpleXML解析它,但必須TrackStatsExtension進不去。 如何循環播放TrackStatsExtension - 獲取Distance和MovingTime?
我想計算平均速度。
兩件事情你應該知道選擇的命名空間是這樣的:首先,你可以使用命名空間別名,而不是直接調用' - > getNamespaces'通過寫作' - > children('gpxtrkx',true)';其次,如果生成文件的代碼更改爲對同一名稱空間使用不同的別名,則實際上應該對來自'xmlns:gpxtrkx'屬性的完整標識符進行硬編碼。例如'define('XMLNS_GPX_TRKX','http:// ....'); $ ext = $ xml-> trk-> extensions-> children(XMLNS_GPX_TRKX);' – IMSoP