php 解析xml文件
2012-06-08 15:00
393 查看
/****************************************** * 解析XML格式的字符串 * @param string $str * @return 解析正确就返回true,否则返回false *******************************************/ function xml_parser($str){ $xml_parser = xml_parser_create(); if(!xml_parse($xml_parser,$str,true)){ xml_parser_free($xml_parser); return false; }else { return true; } } /******************************************** * @取得GPX文件,返回一个数组 * @$filename: 文件名 *******************************************/ private function readGPX($filename) { $xmlDoc = new DOMDocument(); $data=@file_get_contents($filename); //$isok = strpos($data,"<?xml"); $isok = $this->xml_parser($data); $result = array(); if($isok == true){ if($xmlDoc->load($filename)){ $XMLTrkseg = $xmlDoc->getElementsByTagName('trkseg')->item(0); if(count($XMLTrkseg->getElementsByTagName('trkpt')) >= 1){ foreach($XMLTrkseg->getElementsByTagName('trkpt') as $trkpt){ $ele=""; $time = ""; $speed = ""; $lat = ""; $lon = ""; try{ $eles = $trkpt->getElementsByTagName("ele"); $ele = $eles->item(0)->nodeValue; }catch(Exception $e){ } try{ $times = $trkpt->getElementsByTagName("time"); $time = $times->item(0)->nodeValue; if($time !=""){ $time = str_replace("T"," ",str_replace("Z","",$time)); } }catch(Exception $e){ } try{ $speeds = $trkpt->getElementsByTagName("speed"); if(isset($speeds->item(0)->nodeValue)) $speed = $speeds->item(0)->nodeValue; }catch(Exception $e){ } try{ $lat = $trkpt->getAttribute("lat"); }catch(Exception $e){ } try{ $lon = $trkpt->getAttribute("lon"); }catch(Exception $e){ } $x = array("ele"=>$ele,"time"=>$time,"speed"=>$speed,"lat"=>$lat,"lon"=>$lon); $result[] = $x; } } } } return $result; }
相关文章推荐
- 解读PHP DOMDocument在解析XML文件中的作用
- 使用PHP DOM-XML创建和解析XML文件
- PHP通过DOM解析XML文件或者xml字符串
- php官方网---php解析xml文件
- PHP解析Android APK包的XML文件
- PHP解析Android APK包的XML文件
- PHP使用SimpleElement创建和解析xml文件
- Php 解析XML文件
- 解析XML--用php,dom来获得xml文件里的标签内value
- php无法解析post接收过来的xml文件
- php解析xml文件
- php解析xml文件到一个数组
- php的SimpleXML方法读写XML接口文件实例解析
- php的SimpleXML方法读写XML接口文件实例解析
- PHP SimpleXMLElement:XML文件解析和读写
- Php 解析XML文件
- php解析xml文件
- php的SimpleXML方法读写XML接口文件实例解析
- 使用PHP DOM-XML创建和解析XML文件
- PHP中XPATH 实现xml及html文件快速解析(附xml做小型数据库实现六级单词快速查询实例)