亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺析PHP對(duì)XML文檔的基本操作

        2013-04-29 07:54:50張博
        無線互聯(lián)科技 2013年5期

        張博

        摘 要:通過PHP的預(yù)定義類,PHP可以在任何時(shí)候操作XML文檔中的數(shù)據(jù),實(shí)現(xiàn)文檔內(nèi)容的顯示、添加、修改、刪除。

        關(guān)鍵詞:PHP;XML;類定義;操作

        1 創(chuàng)建XML文檔

        如有以下class.xml文檔。

        <?xml version="1.0" encoding="gb2312"?>

        2 PHP對(duì)XML文檔的操作

        2.1 PHP實(shí)現(xiàn)對(duì)XML文檔結(jié)構(gòu)的遍歷與內(nèi)容的顯示

        要實(shí)現(xiàn)對(duì)XML文檔結(jié)構(gòu)的遍歷與內(nèi)容的顯示,則需要用到以下方法:

        ⑴Load():Mixed load(string filename);用于加載一個(gè)filename指定名稱的xml文件。

        ⑵getElementByTagName():DOMNodeListgetElementByTagNames(string name);返回一個(gè)節(jié)點(diǎn)列表,參數(shù)name為指定標(biāo)簽的名稱。

        ⑶item():DomNode item(int index);返回dom節(jié)點(diǎn)列表中的指定節(jié)點(diǎn),參數(shù)index為指定的項(xiàng)數(shù)。

        ⑷顯示class.xml內(nèi)容的相關(guān)代碼:

        <?php

        $dom=new DOMDocument;

        $dom->load("class.xml");

        $root=$dom->getElementsByTagName("CLASS");

        $root=$root->item(0);

        $uid=$dom->getElementsByTagName("STUDENT");

        foreach ($uid as $uidData){

        foreach ($uidData->attributes as $attrib){

        echo $attribName=$attrib->nodeName.":";

        echo $attribValue=$attrib->nodeValue;

        echo "

        ";}}?>。

        2.1 添加XML數(shù)據(jù)

        添加XML數(shù)據(jù)就是對(duì)其節(jié)點(diǎn)的操作,相關(guān)步驟如下:

        ⑴找到需要添加節(jié)點(diǎn)的父節(jié)點(diǎn)

        $root=$dom->getElementsByTagName("CLASS");

        $root=$root->item(0);

        ⑵在這個(gè)父節(jié)點(diǎn)中創(chuàng)建子節(jié)點(diǎn)

        $newclass=$root->appendChild(new DOMElement('STUDENT'));

        ⑶在子節(jié)點(diǎn)中添加屬性和值

        $newclass->setAttributeNode(new DOMAttr("attributename", "values"));其中"attributename"為子節(jié)點(diǎn)中的屬性名,"values"為添加的屬性值。

        ⑷保存文件。$dom->save("class.xml");

        ⑸向class.xml文檔中添加數(shù)據(jù)的主要代碼是:

        $newclass->setAttributeNode(new DOMAttr("no", "003"));

        $newclass->setAttributeNode(new DOMAttr("name", "alice"));

        $newclass->setAttributeNode(newDOMAttr("tel","027567"));

        $dom->save("class.xml");

        2.3 修改XML數(shù)據(jù)

        對(duì)XML文檔數(shù)據(jù)的修改,其實(shí)就是找到滿足條件的節(jié)點(diǎn)記錄,對(duì)相應(yīng)的屬性賦予新的值,并添加到原來的XML文件中,還是以class.xml文件為例,主要代碼是:

        foreach ($class as $newchann){

        foreach ($newchann->attributes as $newAttri){

        if($newAttri->nodeName=="no"){

        if($newAttri->nodeValue=="003"){

        $newchann->setAttribute("tel","888888");//使用函數(shù)對(duì)tel的值進(jìn)行更改}}。

        2.4 刪除XML數(shù)據(jù)

        對(duì)XML數(shù)據(jù)的刪除,主要用到了函數(shù) DOMNode removeChild(DOMNode oldnode),

        DOMNode oldnode為要?jiǎng)h除的某個(gè)數(shù)據(jù)項(xiàng),并將刪除的后的文檔數(shù)據(jù)重新存于另外一個(gè)xml文檔。主要代碼為:

        $del=$class->item(1);

        $all->removeChild($del);

        $dom->save("temp.xml");

        $dom->load("temp.xml");表示刪除后的XML數(shù)據(jù)將保存在temp.xml文件中。

        3 結(jié)語

        PHP操作XML文件,主要是應(yīng)用PHP預(yù)定義的用于操作XML文件的類及類中相關(guān)的方法實(shí)現(xiàn)的,在目前常見的新聞發(fā)布、論壇中,通過讀取XML文件中的數(shù)據(jù)顯示、添加、修改相關(guān)內(nèi)容都是在以上基礎(chǔ)操作上再次細(xì)化設(shè)計(jì)而成,其應(yīng)用成果都得以廣范應(yīng)用。

        [參考文獻(xiàn)]

        [1]許登旺,鄒天思,潘凱華.PHP程序開發(fā)范例寶典.明日科技.人民郵電出版社,2007.10.

        [2]丘廣華,張文敏.XML編程實(shí)例教程.科學(xué)出版社,2004.04.

        亚洲精品国偷拍自产在线| 亚洲成A人A∨久在线观看| 国产喷白浆精品一区二区豆腐| 人妻一区二区三区在线看| 久久久久亚洲av无码专区喷水| 九九99无码精品视频在线观看 | 久久久99久久久国产自输拍| 国产一级内射一片视频免费| 欧美熟妇另类久久久久久不卡 | 久久精品国产亚洲av成人| 精品人妻免费看一区二区三区| 亚洲精品国产av日韩专区| 国内女人喷潮完整视频| 欧美日韩亚洲精品瑜伽裤| 东风日产系列全部车型| 亚洲精品有码日本久久久| 亚洲avav天堂av在线网毛片| 欧美日韩亚洲色图| 日本激情一区二区三区| 亚洲午夜久久久精品影院| 国产精品久久久久久52avav| 成在线人视频免费视频| 宅男视频一区二区三区在线观看 | 最近2019年好看中文字幕视频| 99精品久久这里只有精品| 精品一区二区三区不老少妇| 亚洲国产精品亚洲一区二区三区| 久久夜色精品国产噜噜亚洲av| 久久水蜜桃亚洲av无码精品麻豆| 亚洲国产精品久久性色av| 中文字幕日韩精品美一区二区三区| 日韩少妇人妻精品中文字幕| 日韩人妻无码一区二区三区久久| 亚洲无码专区无码| 精品国产车一区二区三区| 中文字幕日本av网站| 欧美日韩在线视频一区| 精品乱码一区二区三区四区| 台湾自拍偷区亚洲综合| 免费的日本一区二区三区视频| 波多野结衣乳巨码无在线|