首頁 > 後端開發 > php教程 > PHP xml解析與生成之SimpleXML使用介紹

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

巴扎黑
發布: 2023-03-15 07:36:01
原創
2045 人瀏覽過

xml就不多解釋了,php也提供了操作xml的方法,php操作xml可以有多種方式如domdocment,simplexml,xmlwriter等其中最簡單的應該是simplexml了,這次就來說說simplexml怎麼讀取和解析xml檔案或字串

1. 產生xml字串和檔案


<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new SimpleXMLElement(&#39;<?xml version="1.0" encoding="utf-8"?><UsersInfo />&#39;);
 $item=$xml->addchild("item");
 $item->addchild("name","冯绍峰");
 $item->addchild("age","30");
 $item2=$xml->addchild("item");
 $item2->addchild("name","潘玮柏");
 $item2->addchild("age","29");
 $item2->addAttribute("id","02");
 header("Content-type: text/xml");
 echo $xml->asXml();
 $xml->asXml("student.xml");
?>
登入後複製

產生xml最重要的就是addchild,addAttribute,asXml三個方法,如果只是單純產生xml檔的話那個header可以不要,下面是瀏覽器的顯示結果

 

#是不是很簡單呢

2.simplexml解析xml檔或字串


<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=simplexml_load_file("UserInfo.xml");
 //通过children取得根节点下面的子项
 for($i=0;$i<count($xml->children());$i++){
   foreach ($xml->children()[$i] as $key => $value ) {
    echo "$key:$value"."<br/>";
   }
 }
?>
登入後複製

上面的方法適合解析xml文件,如果是xml字串就把simplexml_load_file改為simplexml_load_string就可以了,children用於取得根節點或子節點,取得的節點是一個陣列直接遍歷必要的時候加上過濾條件就可以了,以下是解析的結果

 

順便把我的xml檔貼出來


<?xml version="1.0" encoding="UTF-8"?>
<UsersInfo>
 <item>
   <name>潘玮柏</name>
   <address>上海市浦东新区</address>
   <song>快乐崇拜</song>
 </item>
 <item>
   <name>蔡依林</name>
   <address>上海市徐汇区</address>
   <song>独占神话</song>
 </item>
</UsersInfo>
登入後複製

總的說來操作真的太簡潔了。

以上是PHP xml解析與生成之SimpleXML使用介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
SimpleXML 未載入 GML 數據
來自於 1970-01-01 08:00:00
0
0
0
Simple XML - 處理節點中的冒號
來自於 1970-01-01 08:00:00
0
0
0
java - springboot新手學習
來自於 1970-01-01 08:00:00
0
0
0
spring - JavaWeb中 Service 層的事務問題
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板