PHP使用DOM和simplexml讀取xml文件的方法詳解

墨辰丷
發布: 2023-03-28 06:24:01
原創
1318 人瀏覽過

這篇文章主要介紹了PHP使用DOM和simplexml讀取xml文檔的方法,結合實例形式分析了php使用DOM及simplxml針對xml文件的創建、載入、讀取等相關操作技巧,需要的朋友可以參考下

本文實例講述了PHP使用DOM和simplexml讀取xml文件的方法。分享給大家供大家參考,具體如下:

實例  用DOM取得下列xml文檔中所有金庸小說的書名,該xml文檔所在位置為./books.xml:

#


 
  天龙八部
  金庸
 
 
  陆小凤
  古龙
 
 
  倚天屠龙记
  金庸
 
 
  西游记
  吴承恩
 
 
  神雕侠侣
  金庸
 
 
  射雕英雄传
  金庸
 
登入後複製

用DOM程式碼實作:

#DOM讀取xml文檔步驟:1、建立DOM物件-》2、載入DOM文檔內容——》3、截取要讀取內容所在的標籤——》取得要讀取的內容。

header('Content-type:text/html;charset=utf-8');
$arr=array();
$dom = new DOMDocument();//创建DOM对象
$dom->load('./books.xml');//载入xml文档
print_r($dom);
echo '
'; $dom = $dom->getElementsByTagName('book');//截取标签 for($i=0;$i<$dom->length;$i++){ if($dom->item($i)->childNodes->item(1)->childNodes->item(0)->wholeText=='金庸'){ $arr[] = $dom->item($i)->childNodes->item(0)->childNodes->item(0)->wholeText.'
';//获取内容 } } print_r($arr);
登入後複製

使用getElementsByTagName 和childNodes 後回傳的都是對象,所以它們後面必須使用item(int),即使它們回傳的物件裡面只包含一個項目,也必須用item(0)來指定,否則就會出錯。

用simplexml程式碼實作:

$simxml = simplexml_load_file('./books.xml');
$t = $simxml->book;
$arr=array();
foreach ($t as $v){
 if($v->author=='金庸'){
  $arr[] = (string)$v->title;
 }
}
print_r($arr);
登入後複製

使用simplexml_load_file 後面傳回的是對象,該物件裡的項目既有物件又有數組,不管是物件還是數組,要循環裡面的內容都可以用foreach。該實例最後取得的內容 $v->title 其實是個對象,所以要用 string 轉換為字串。

以上就是本文的全部內容,希望對大家的學習有所幫助。


相關推薦:

PHP實作基於SimpleXML產生和解析xml的方法

PHP xml解析與生成之SimpleXML使用介紹

#php SimpleXML()函數用法詳解

########################################################### ##########

以上是PHP使用DOM和simplexml讀取xml文件的方法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!