PHP輸出XML格式數(shù)據(jù)的方法總結(jié)
本文實例講述了PHP輸出XML格式數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:
方法1:
<?php header("Content-type: text/xml"); echo "<?xml version='1.0' encoding='UTF-8'?>"; echo "<users>"; echo "<user>"; echo "<name>"; echo "小小菜鳥"; echo "</name>"; echo "<age>"; echo "24"; echo "</age>"; echo "<sex>"; echo "男"; echo "</sex>"; echo "</user>"; echo "<user>"; echo "<name>"; echo "艷艷"; echo "</name>"; echo "<age>"; echo "23"; echo "</age>"; echo "<sex>"; echo "女"; echo "</sex>"; echo "</user>"; echo "</users>"; ?>
上述示例運行效果圖如下:
方法2:
<?php header("Content-type: text/xml"); echo "<?xml version='1.0' encoding='UTF-8'?>"; echo "<users><user><name> 小小菜鳥</name><age>24</age><sex>男</sex>< /user><user><name>艷艷</name><age>23< /age><sex>女</sex></user></users>"; ?>
方法3:
<?php header('Content-Type: text/xml;'); //創(chuàng)建新的xml文件 $dom = new DOMDocument('1.0', 'utf-8'); //建立<response>元素 $response = $dom->createElement('response'); $dom->a($response); //建立<books>元素并將其作為<response>的子元素 $books = $dom->createElement('books'); $response->a($books); //為book創(chuàng)建標(biāo)題 $title = $dom->createElement('title'); $titleText = $dom->createTextNode('PHP與AJAX'); $title->a($titleText); //為book創(chuàng)建isbn元素 $isbn = $dom->createElement('isbn'); $isbnText = $dom->createTextNode('1-21258986'); $isbn->a($isbnText); //創(chuàng)建book元素 $book = $dom->createElement('book'); $book->a($title); $book->a($isbn); //將<book>作為<books>子元素 $books->a($book); //在一字符串變量中建立XML結(jié)構(gòu) $xmlString = $dom->saveXML(); //輸出XML字符串 echo $xmlString; ?>
1.php輸出xml的實例
header('Content-Type: text/xml'); $sql = "select * from article order by post_date limit 100"; $re = $db->query($sql); echo "<?xml version="1.0" encoding="utf-8"?>\n"; echo "<data>\n"; while($row = $db->fetchArray($re)){ echo "<event "; echo "start="".strftime ("%b %d %Y %H:%M:%S", $row['post_date'])."" "; echo "title="".htmlspecialchars($row['title'])."" "; echo "link="tdetail.php?id=".$row['time_point']."""; echo ">"; echo htmlspecialchars($row['content']); echo "</event>\n"; } echo "</data>";
2.用JavaScript操作XML 實例
文中盡量用上所有的操作和屬性,以做示范
<script language="JavaScript"> <!-- var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject("Microsoft.XMLDOM") //加載文檔 //doc.load("b.xml"); //創(chuàng)建文件頭 var p = doc.createProcessingInstruction("xml","version='1.0' encoding='gb2312'"); //添加文件頭 doc.a(p); //用于直接加載時獲得根接點 //var root = doc.documentElement; //兩種方式創(chuàng)建根接點 // var root = doc.createElement("students"); var root = doc.createNode(1,"students",""); //創(chuàng)建子接點 var n = doc.createNode(1,"ttyp",""); //指定子接點文本 //n.text = " this is a test"; //創(chuàng)建孫接點 var o = doc.createElement("sex"); o.text = "男"; //指定其文本 //創(chuàng)建屬性 var r = doc.createAttribute("id"); r.value="test"; //添加屬性 n.setAttributeNode(r); //創(chuàng)建第二個屬性 var r1 = doc.createAttribute("class"); r1.value="tt"; //添加屬性 n.setAttributeNode(r1); //刪除第二個屬性 n.removeAttribute("class"); //添加孫接點 n.a(o); //添加文本接點 n.a(doc.createTextNode("this is a text node.")); //添加注釋 n.a(doc.createComment("this is a comment\n")); //添加子接點 root.a(n); //復(fù)制接點 var m = n.cloneNode(true); root.a(m); //刪除接點 root.removeChild(root.childNodes(0)); //創(chuàng)建數(shù)據(jù)段 var c = doc.createCDATASection("this is a cdata"); c.text = "hi,cdata"; //添加數(shù)據(jù)段 root.a(c); //添加根接點 doc.a(root); //查找接點 var a = doc.getElementsByTagName_r("ttyp"); //var a = doc.selectNodes("http://ttyp"); //顯示改接點的屬性 for(var i= 0;i<a.length;i++) { alert(a.xml); for(var j=0;j<a.attributes.length;j++) { alert(a.attributes[j].name); } } //修改節(jié)點,利用XPATH定位節(jié)點 var b = doc.selectSingleNode("http://ttyp/sex"); b.text = "女"; //alert(doc.xml); //XML保存(需要在服務(wù)端,客戶端用FSO) //doc.save(); //查看根接點XML if(n) { alert(n.ownerDocument.xml); } //--> </script>
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è)計有所幫助。
相關(guān)文章
PHP操作ZipArchive實現(xiàn)文件上傳下載功能
在很多實際生產(chǎn)場景都需要批量上傳、下載一些文件的處理,本文將利用PHP?ZipArchive實現(xiàn)文件上傳下載功能,有需要的小伙伴可以參考一下2024-03-03在PHP上顯示JFreechart畫的統(tǒng)計圖方法
在JSP上的servlet能完全的顯示出JFreechart畫的統(tǒng)計圖,但是和其他語言混合運用就不能顯示了,下面為大家介紹下如何在PHP上顯示JFreechart2013-11-11php使用Jpgraph繪制簡單X-Y坐標(biāo)圖的方法
這篇文章主要介紹了php使用Jpgraph繪制簡單X-Y坐標(biāo)圖的方法,實例分析了Jpgraph繪制坐標(biāo)圖及繪制曲線的相關(guān)技巧,需要的朋友可以參考下2015-06-06PHP實現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法【文字,圖片,圖文】
這篇文章主要介紹了PHP實現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法,可實現(xiàn)發(fā)送文字、圖片及圖文的功能,涉及php針對微信接口的相關(guān)操作技巧,需要的朋友可以參考下2017-06-06