PHP基于DOM創(chuàng)建xml文檔的方法示例
本文實例講述了PHP基于DOM創(chuàng)建xml文檔的方法。分享給大家供大家參考,具體如下:
DOM創(chuàng)建xml文檔
用dom創(chuàng)建如下文檔:
<booklist> <book id="1"> <title>天龍八部</title> <author>金庸</author> <content> <![CDATA[ 天龍八部是金庸寫的一本武俠小說,非常好看! ]]> </content> </book> </booklist>
實現(xiàn)步驟:
1、創(chuàng)建DOM對象 ——》2、創(chuàng)建節(jié)點——》3、創(chuàng)建下級節(jié)點——》4、將下級節(jié)點加入到上級節(jié)點中——》5、創(chuàng)建屬性節(jié)點——》6、將屬性節(jié)點加入到擁有該屬性的節(jié)點中——》7、如果還有節(jié)點則重復2~6步驟——》8、將最高級節(jié)點(即根節(jié)點)加入到DOM對象中——》9、打開或存儲xml文檔。
在創(chuàng)建節(jié)點的過程中既可以從最下級節(jié)點開始創(chuàng)建,也可以從根節(jié)點開始。實現(xiàn)代碼如下:
<?php header('Content-Type: text/xml;'); $dom = new DOMDocument('1.0','utf-8');//建立DOM對象 $no1 = $dom->createElement('booklist');//創(chuàng)建普通節(jié)點:booklist $dom->appendChild($no1);//把booklist節(jié)點加入到DOM文檔中 $no2 = $dom->createElement('book');//創(chuàng)建book節(jié)點 $no1->appendChild($no2);//把book節(jié)點加入到booklist節(jié)點中 $no3 = $dom->createAttribute('id');//創(chuàng)建屬性節(jié)點:id $no3->value = 1;//給屬性節(jié)點賦值 $no2->appendChild($no3);//把屬性節(jié)點加入到book節(jié)點中 $no3 = $dom->createElement('title'); $no2->appendChild($no3); $no4 = $dom->createTextNode('天龍八部');//創(chuàng)建文本節(jié)點:天龍八部 $no3->appendChild($no4);//把天龍八部節(jié)點加入到book節(jié)點中 $no3 = $dom->createElement('author'); $no2->appendChild($no3); $no4 = $dom->createTextNode('金庸');//創(chuàng)建文本節(jié)點:天龍八部 $no3->appendChild($no4);//把天龍八部節(jié)點加入到book節(jié)點中 $no3 = $dom->createElement('content'); $no2->appendChild($no3); $no4 = $dom->createCDATASection('天龍八部是金庸寫的一本武俠小說,非常好看!');//創(chuàng)建文CDATA節(jié)點 $no3->appendChild($no4);//把天龍八部節(jié)點加入到book節(jié)點中 header('Content-type:text/html;charset=utf-8'); echo $dom->save('booklist.xml')?'存儲成功':'存儲失敗';//存儲為xml文檔 /*直接以xml文檔格式打開 header('Content-type:text/xml'); echo $dom->savexml(); */ ?>
PS:這里再為大家提供幾款關(guān)于xml操作的在線工具供大家參考使用:
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
在線格式化XML/在線壓縮XML:
http://tools.jb51.net/code/xmlformat
XML在線壓縮/格式化工具:
http://tools.jb51.net/code/xml_format_compress
XML代碼在線格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP針對XML文件操作技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP錯誤與異常處理方法總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
- php simplexmlElement操作xml的命名空間實現(xiàn)代碼
- PHP XML操作類DOMDocument
- php中DOMDocument簡單用法示例代碼(XML創(chuàng)建、添加、刪除、修改)
- PHP使用DOMDocument類生成HTML實例(包含常見標簽元素)
- PHP 中 DOMDocument保存xml時中文出現(xiàn)亂碼問題的解決方案
- PHP基于DOMDocument解析和生成xml的方法分析
- PHP實現(xiàn)動態(tài)創(chuàng)建XML文檔的方法
- PHP創(chuàng)建XML接口示例
- PHP創(chuàng)建XML的方法示例【基于DOMDocument類及SimpleXMLElement類】
相關(guān)文章
php中常量DIRECTORY_SEPARATOR用法深入分析
這篇文章主要介紹了php中常量DIRECTORY_SEPARATOR用法深入分析,涉及針對Linux路徑分隔符不支持\的情況,具有一定的實用價值,需要的朋友可以參考下2014-11-11PHP入門教程之自定義函數(shù)用法詳解(創(chuàng)建,調(diào)用,變量,參數(shù),返回值等)
這篇文章主要介紹了PHP入門教程之自定義函數(shù)用法,結(jié)合實例形式分析了php關(guān)于自定義函數(shù)的創(chuàng)建、返回值、參數(shù)、調(diào)用方法以及全局變量、魔法常量的使用等相關(guān)技巧,需要的朋友可以參考下2016-09-09如何使用PHP實現(xiàn)javascript的escape和unescape函數(shù)
本篇文章是對使用PHP實現(xiàn)javascript的escape和unescape函數(shù)的方法進行了詳細的分析介紹,需要的朋友參考下2013-06-06