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

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

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

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

1. 產生xml字串和檔案


1

2

3

4

5

6

7

8

9

10

11

12

13

14

<?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檔或字串


1

2

3

4

5

6

7

8

9

10

<?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檔貼出來


1

2

3

4

5

6

7

8

9

10

11

12

13

<?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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板