本文部分参考一下链接
php解析样例:http://babyjoycry.javaeye.com/blog/598732
php获取xml attribute:http://www.w3schools.com/dom/dom_nodes_get.asp
php关于xml的参考资料:http://php.net/manual/en/book.domxml.php
- <?php
- $xml ="1.xml";
- $dom = new DOMDocument();
- $dom->load($xml);
- $root = $dom->documentElement;
- $arr=array();
- foreach ($root->childNodes as $item)
- {
- if($item->hasChildNodes()){
- $tmp=array();
- foreach($item->childNodes as $one){
- if(!emptyempty($one->tagName)){
- $tmp[$one->tagName]=$one->nodeValue;
- }
- }
- $arr[$item->tagName]=$tmp;
- }
- }
- print_r($arr);
1,xml文件如下:
- <all>
- <杭州>
- <拼车顺风车>http%3A%2F%2Fhz.fenlei168.com%2Fpinche%2F</拼车顺风车>
- <四S店经销商>http%3A%2F%2Fhz.fenlei168.com%2Fssss%2F</四S店经销商>
- <二手汽车>http%3A%2F%2Fhz.fenlei168.com%2Fershouche%2F</二手汽车>
- <汽车配件>http%3A%2F%2Fhz.fenlei168.com%2Fqipeijian%2F</汽车配件>
- <租车代驾陪练>http%3A%2F%2Fhz.fenlei168.com%2Fdaijia%2F</租车代驾陪练>
- <汽车服务过户>http%3A%2F%2Fhz.fenlei168.com%2Fqicheguohu%2F</汽车服务过户>
- <二手摩托车>http%3A%2F%2Fhz.fenlei168.com%2Fershoumotuo%2F</二手摩托车>
- <自行车电动车>http%3A%2F%2Fhz.fenlei168.com%2Fzixingche%2F</自行车电动车>
- <其它车辆信息>http%3A%2F%2Fhz.fenlei168.com%2Fqitache%2F</其它车辆信息>
- </杭州>
- <武汉>
- <拼车顺风车>http%3A%2F%2Fwh.fenlei168.com%2Fpinche%2F</拼车顺风车>
- <四S店经销商>http%3A%2F%2Fwh.fenlei168.com%2Fssss%2F</四S店经销商>
- <二手汽车>http%3A%2F%2Fwh.fenlei168.com%2Fershouche%2F</二手汽车>
- <汽车配件>http%3A%2F%2Fwh.fenlei168.com%2Fqipeijian%2F</汽车配件>
- <租车代驾陪练>http%3A%2F%2Fwh.fenlei168.com%2Fdaijia%2F</租车代驾陪练>
- <汽车服务过户>http%3A%2F%2Fwh.fenlei168.com%2Fqicheguohu%2F</汽车服务过户>
- <二手摩托车>http%3A%2F%2Fwh.fenlei168.com%2Fershoumotuo%2F</二手摩托车>
- <自行车电动车>http%3A%2F%2Fwh.fenlei168.com%2Fzixingche%2F</自行车电动车>
- <其它车辆信息>http%3A%2F%2Fwh.fenlei168.com%2Fqitache%2F</其它车辆信息>
- </武汉>
- </all>
以上程序会将1.xml解析,并将内容放入数组。
Get the Value of an Attribute
In the DOM, attributes are nodes. Unlike element nodes, attribute nodes have text values.
The way to get the value of an attribute, is to get its text value.
This can be done using the getAttribute() method or using the nodeValue property of the attribute node.
Get an Attribute Value - getAttribute()
The getAttribute() method returns an attribute value.
The following code retrieves the text value of the "lang" attribute of the first <title> element:
Example
Try it yourself » |
Result: txt = "en"
Example explained:
- Load "books.xml" into xmlDoc using loadXMLDoc()
- Set the txt variable to be the value of the "lang" attribute of the first title element node
Loop through all <book> elements and get their "category" attributes: Try it yourself