欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP基于XMLWriter操作xml的方法分析

 更新時間:2017年07月17日 12:10:40   作者:青蛙小王子  
這篇文章主要介紹了PHP基于XMLWriter操作xml的方法,結(jié)合實例形式分析了php使用XMLWriter生成及解析xml數(shù)據(jù)的操作技巧,需要的朋友可以參考下

本文實例講述了PHP基于XMLWriter操作xml的方法。分享給大家供大家參考,具體如下:

接著昨天的這次再來學(xué)習(xí)一種讀寫xml的方式,這種方式主要圍繞XMLWriter和XMLReader進行。前者用于生成xml,后者則是用來讀取并解析xml.廢話不多說一起來看看吧

1. 生成xml文件或字符串

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new XMLWriter();
 //$xml->openUri("php://output");
 //設(shè)置輸出,如果不需要保存成文件則使用上面被注釋掉那句
 $xml->openUri("stu2.xml");
 //設(shè)置縮進字符串,這里設(shè)置為空串(這句和下面的setIntent也可以不要)
 $xml->setIndentString('');
 $xml->setIndent(true);
 //xml文檔開始
 $xml->startDocument('1.0', 'utf-8');
 //創(chuàng)建根節(jié)點
 $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");
 //取得緩沖區(qū)里的xml字符串
 //echo $xml->outputMemory();
?>

這種方式的特點是每個標(biāo)簽結(jié)束后需要一個endElement,xml拼接好后需要把文檔結(jié)束掉。有一種“層層包裹”的感覺

2. 解析xml

<?php
 header("Content-type: text/html; charset=utf-8");
 $xml=new XMLReader();
//載入xml文件,如果是字符串直接使用xml方法
 $xml->open("student.xml");
//開始讀取xml
 while($xml->read()){
   //根據(jù)節(jié)點類型和元素名稱取得文本節(jié)點或?qū)傩?
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'item') {
     print $xml->getAttribute("id") . "</br>";
   }
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'name') {
     //移動指針到下一個節(jié)點
     $xml->read();
     //取得文本節(jié)點的值
     print $xml->value."</br>";
  }
  if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == 'age') {
     $xml->read();
     print $xml->value."</br>";
  }
 }
?>

這種解析xml的方式比較高效,如果有的地方看不懂建議查閱下PHP開發(fā)手冊

被解析的文件內(nèi)容如下

<?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>

下面是解析出來的結(jié)果

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中正確的使用json

    如何在php中正確的使用json

    以下是對在php中正確使用json的方法進行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-08-08
  • phpMyAdmin通過密碼漏洞留后門文件

    phpMyAdmin通過密碼漏洞留后門文件

    今天小編就為大家分享一篇關(guān)于phpMyAdmin通過密碼漏洞留后門文件,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • Windows下安裝Memcached的步驟說明

    Windows下安裝Memcached的步驟說明

    Windows 下安裝 Memcached 的方法,需要的朋友可以參考下。
    2010-04-04
  • 對PHP依賴注入的理解實例分析

    對PHP依賴注入的理解實例分析

    這篇文章主要介紹了對PHP依賴注入的理解,結(jié)合實例形式詳細(xì)分析了PHP依賴注入的相關(guān)概念與原理,需要的朋友可以參考下
    2016-10-10
  • php魔法函數(shù)與魔法常量使用介紹

    php魔法函數(shù)與魔法常量使用介紹

    這篇文章主要介紹了php魔法函數(shù)與魔法常量的相關(guān)知識介紹,需要的朋友可以參考下
    2017-07-07
  • php中動態(tài)變量用法實例

    php中動態(tài)變量用法實例

    這篇文章主要介紹了php中動態(tài)變量用法,實例分析了php中動態(tài)變量的相關(guān)使用技巧,需要的朋友可以參考下
    2015-06-06
  • php引用計數(shù)器進行垃圾收集機制介紹

    php引用計數(shù)器進行垃圾收集機制介紹

    每一種計算機語言都有自己的自動垃圾回收機制,讓程序員不必過分關(guān)心程序內(nèi)存分配,php也不例外,但是在面向?qū)ο缶幊?OOP)編程中,有些對象需要顯式的銷毀;防止程序執(zhí)行內(nèi)存溢出
    2012-09-09
  • php通過function_exists檢測函數(shù)是否存在的方法

    php通過function_exists檢測函數(shù)是否存在的方法

    這篇文章主要介紹了php通過function_exists檢測函數(shù)是否存在的方法,實例分析了php使用function_exists檢測函數(shù)是否存在及調(diào)用的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • PHP文件操作實例總結(jié)

    PHP文件操作實例總結(jié)

    這篇文章主要介紹了PHP文件操作,結(jié)合實例形式總結(jié)分析了php關(guān)于文件讀寫操作的常見函數(shù)及使用技巧,需要的朋友可以參考下
    2016-09-09
  • PHP使用pdo連接access數(shù)據(jù)庫并循環(huán)顯示數(shù)據(jù)操作示例

    PHP使用pdo連接access數(shù)據(jù)庫并循環(huán)顯示數(shù)據(jù)操作示例

    這篇文章主要介紹了PHP使用pdo連接access數(shù)據(jù)庫并循環(huán)顯示數(shù)據(jù)操作,結(jié)合實例形式較為詳細(xì)的分析了php使用pdo進行access數(shù)據(jù)庫連接、查詢、執(zhí)行sql語句、預(yù)處理等相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2018-06-06

最新評論