PHP基础之使用SimpleXML解析xml

上面两篇记录了PHP中解析xml的两种不同方法,分别是使用Expat和DOM解析xml文档,这一篇中使用SimpleXML解析xml,该方法比前面两种方法都简便,代码量非常少,下面先看xml文档的内容:

<?xml version="1.0" encoding="utf-8"?>
<persons>
	<person id="1">
		<name>zhangsan</name>
		<age>21</age>
		<job>teacher</job>
		<sex>male</sex>
		<company>IBM</company>
	</person>
	<person id="2">
		<name>lisi</name>
		<age>20</age>
		<job>manager</job>
		<sex>female</sex>
		<company>Google</company>
	</person>
</persons>
下面是解析xml的PHP代码:

<?php
	$xmlDoc = simplexml_load_file("data.txt");
	foreach($xmlDoc->children() as $child){
		//$child就是一个person节点
		foreach($child->attributes() as $attr){
			echo $attr->getName() . " = " . $attr . "<br/>";
		}
		foreach($child->children() as $personChild){
			echo $personChild->getName() . " = " . $personChild . "<br/>";
		}
	}
	
?>
上面的代码在浏览器中输出结果为:



可以看到,simpleXML使用很少量的代码,就可以完成解析工作,其中getName()函数返回的是xml标签中的元素名称,children()函数返回某个节点下的所有子节点

你可能感兴趣的:(PHP,xml解析,simplexml)