1. 程式人生 > >simpleXML技術解析xml文件(php)

simpleXML技術解析xml文件(php)

返回 1.0 元素 出名字 === 所有 php 技術 PC

1.simpleXML的核心思想:以面向對象的方法來操作xml文件

此技術可以將xml文件的所有元素都轉成對象。會返回一個對象數組,再用foreach遍歷,即可得到元素的名稱,內容,和屬性值。

test.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE 班級 SYSTEM "test.dtd">
<!--<!DOCTYPE 班級 [
<!Element 班級 (學生+)>
<!Element 學生 (name,age,sex)>
<!Element name (#PCDATA)>
<!Element age (#PCDATA)>
<!Element sex (#PCDATA)>
]>-->
<班級>
<學生 別名="笨蛋">
<name>
寶娟
</name>
<age>25</age>
<sex>男</sex>
</學生>
<學生>
<name>
鑫鑫
</name>
<age>25</age>
<sex>男</sex>
</學生>
<學生>
<name>娟</name>
<age>25</age>
<sex>男</sex>
</學生>
</班級>

simpleXML.php

<html>
<head>
<meta http-equiv="content-type"content="text/html charset=utf-8"/>
</head>
<?php
$lib=simplexml_load_file("test.xml");
//print_r($lib);
//取出學生,$stus就是一個數組
$stus=$lib->學生;

//$stu=$stus[0];
//echo count($stus); //3
//取出名字
//echo $stu->name."<br/>"; //寶娟
//取出年齡
//echo $stu->age."<br/>"; //25
//取出性別
//echo $stu->sex; //男

for($i=0;$i<count($stus);$i++){
$stu=$stus[$i];
//取出屬性值
echo $stu[‘別名‘];
echo $stu->name."<br/>".$stu->age."<br/>".$stu->sex."<br/>";
/*寶娟
25

鑫鑫
25


25
男*/
}

//simpleXML和xpath結合使用,功能強大
echo "===============simpleXML和xpath結合使用====================="."<br/>";
$arr=$lib->xpath("//name");
foreach($arr as $val){
echo $val."<br/>";
}

?>
</html>

simpleXML技術解析xml文件(php)