《PHP應用:PHP基于XMLWriter操作xml的方法分析》要點:
本文介紹了PHP應用:PHP基于XMLWriter操作xml的方法分析,希望對您有用。如果有疑問,可以聯系我們。
PHP教程本文實例講述了PHP基于XMLWriter操作xml的方法.分享給大家供大家參考,具體如下:
PHP教程接著昨天的這次再來學習一種讀寫xml的方式,這種方式主要圍繞XMLWriter和XMLReader進行.前者用于生成xml,后者則是用來讀取并解析xml.廢話不多說一起來看看吧
PHP教程1. 生成xml文件或字符串
PHP教程
<?php
header("Content-type: text/html; charset=utf-8");
$xml=new XMLWriter();
//$xml->openUri("php://output");
//設置輸出,如果不需要保存成文件則使用上面被注釋掉那句
$xml->openUri("stu2.xml");
//設置縮進字符串,這里設置為空串(這句和下面的setIntent也可以不要)
$xml->setIndentString('');
$xml->setIndent(true);
//xml文檔開始
$xml->startDocument('1.0', 'utf-8');
//創建根節點
$xml->startElement("StudentInfo");
$xml->startElement("Item");
//添加屬性
$xml->writeAttribute("type","1");
$xml->startElement("id");
$xml->text("01");
$xml->endElement();
$xml->startElement("name");
$xml->text("劉惜君");
$xml->endElement();
$xml->endElement();
$xml->endElement();
$xml->endDocument();
//header("Content-type: text/xml");
//取得緩沖區里的xml字符串
//echo $xml->outputMemory();
?>
PHP教程這種方式的特點是每個標簽結束后需要一個endElement,xml拼接好后需要把文檔結束掉.有一種“層層包裹”的感覺
PHP教程2. 解析xml
PHP教程
<?php
header("Content-type: text/html; charset=utf-8");
$xml=new XMLReader();
//載入xml文件,如果是字符串直接使用xml方法
$xml->open("student.xml");
//開始讀取xml
while($xml->read()){
//根據節點類型和元素名稱取得文本節點或屬性
if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'item') {
print $xml->getAttribute("id") . "</br>";
}
if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'name') {
//移動指針到下一個節點
$xml->read();
//取得文本節點的值
print $xml->value."</br>";
}
if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'age') {
$xml->read();
print $xml->value."</br>";
}
}
?>
PHP教程這種解析xml的方式比較高效,如果有的地方看不懂建議查閱下PHP開發手冊
PHP教程被解析的文件內容如下
PHP教程
<?xml version="1.0" encoding="utf-8"?>
<UsersInfo><item id="01"><name>馮紹峰</name><age>30</age></item><item id="02"><name>潘瑋柏</name><age>29</age></item></UsersInfo>
PHP教程下面是解析出來的結果
PHP教程
PHP教程PS:這里再為大家提供幾款關于xml操作的在線工具供大家參考使用:
PHP教程在線XML/JSON互相轉換工具:
http://tools.jb51.net/code/xmljson
PHP教程在線格式化XML/在線壓縮XML:
http://tools.jb51.net/code/xmlformat
PHP教程XML在線壓縮/格式化工具:
http://tools.jb51.net/code/xml_format_compress
PHP教程XML代碼在線格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
PHP教程更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP針對XML文件操作技巧總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《PHP錯誤與異常處理方法總結》、《PHP基本語法入門教程》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
PHP教程希望本文所述對大家PHP程序設計有所幫助.
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/480.html