PHP的三種XML解析器之SimpleXML解析器(三)

XML文件內容

<?xml version="1.0" encoding="UTF-8" ?>
<note>
	<to>騰訊</to>
	<from>百度</from>
	<head>bat</head>
	<body>BAT是中國互聯網公司百度公司(Baidu)、阿里巴巴集團(Alibaba)、騰訊公司(Tencent)三大巨頭首字母縮寫。</body>
</note>

PHP文件內容

<?php
	header('Content-type:text/html;charset=utf-8');
	/*
	三種方式解析XML文件
	1.基於事件的Expat解析器
	2.基於樹的DOM解析器
	3.SimpleXML解析器
	*/

	//SimpleXML解析器
	//1.加載XML文件
	$xml = simplexml_load_file('note.xml');
	
	//2.輸出XML根節點的名稱
	echo $xml -> getName() . '<br />';

	//3.遍歷根節點的所有子節點
	foreach ($xml -> children() as $child){
		echo $child -> getName() . ': ' . $child . '<br />';
	}

網頁輸出



結論

跟DOM解析器比較,發現二者的結構差不多,但還是有一些差異。

1.SimpleXML不需要初始化解析器了,直接加載文件。

2.SimpleXML解析器加載XML文件後,直接獲取到了根節點,而DOM解析器則需要獲取documentElement屬性才獲取到根節點。

3.在子節點遍歷中,SimpleXML解析器輸出子節點變量就直接輸出了子節點的文本內容,而DOM節點需要獲取nodeValue屬性。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章