韩剧1988免费观看全集_久久影视三级福利片_亚洲视频在线观看免费_在线观看欧美日韩_国产亚洲激情在线_亚洲精品美女久久久_欧美国产日韩一区二区在线观看_91在线观看免费高清完整版在线观看_日韩av免费看_国产又爽又黄的激情精品视频_琪琪亚洲精品午夜在线_欧美性猛xxx_不卡毛片在线看_国产亚洲日本欧美韩国_91国内在线视频_精品国产福利视频

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

PHP中的XML應(yīng)用(一)

PHP中的XML應(yīng)用(一)

更新時(shí)間:2022-10-12 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

綜述
XML代表Extensible Markup Language(eXtensible Markup Language的縮寫,意為可擴(kuò)展的標(biāo)記語言)。XML是一套定義語義標(biāo)記的規(guī)則,這些標(biāo)記將文檔分成許多部件并對(duì)這些部件加以標(biāo)識(shí)。它也是元標(biāo)記語言,即定義了用于定義其他與特定領(lǐng)域有關(guān)的、語義的、結(jié)構(gòu)化的標(biāo)記語言的句法語言。XML是當(dāng)今最熱門的技術(shù)。而PHP也具有分析XML文檔的功能,下面我們將共同探討一下PHP中的XML應(yīng)用的情況。

XML概貌
  談起XML(eXtended Markup Language:可擴(kuò)展標(biāo)記語言),我們不妨先看一段HTML的代碼:

<html>
<title>XML</title>
<body>
<p><center><font color="red">TEXT</font></center></p>
<a href="www.domain.com"><img src=http://cfan.net.cn/info/"logo.jpg"/></a>
</body>
</html>

  上面這段代碼從結(jié)構(gòu)上就符合XML的規(guī)則,XML可以理解是包含數(shù)據(jù)的樹形的結(jié)構(gòu)類型:

1、引用同一個(gè)元素的時(shí)候,使用一致的大小寫,如<center></Center>就是不符合規(guī)定的
2、任何屬性值(如 href="????")要用""引起來,如<a href=www.yahoo.com>就是不正確的
3、所有元素必須由打開<和關(guān)閉>標(biāo)注組成,元素應(yīng)該形如<body></body>或空元素<img ... />,如果結(jié)尾的 "/>" 少了"/"就是錯(cuò)誤的代碼
4、所有元素必須彼此嵌套,就像寫程序的循環(huán)一樣,而且,所有的元素必須嵌套于根元素之中,比如上面的代碼所有的內(nèi)容都嵌套于<html></html>之中。
5、元素名稱(即上面的body a p img等)應(yīng)為字母開頭。

怎樣應(yīng)用PHP的XML解析器Expat?
Expat是PHP腳本語言的XML解析器(同樣稱為XML處理器),可以使程序訪問XML文檔的結(jié)構(gòu)和內(nèi)容。它是一種基于事件的解析器。XML解析器有兩種基本類型:

基于樹型的解析器:將XML文檔轉(zhuǎn)換成樹型結(jié)構(gòu)。這類解析器分析整篇文章,同時(shí)提供一個(gè)API來訪問所產(chǎn)生樹的每個(gè)元素。其通用的標(biāo)準(zhǔn)為DOM(文檔對(duì)象模式)。

基于事件的解析器:將XML文檔視為一系列的事件。當(dāng)一個(gè)特殊事件發(fā)生時(shí),解析器將調(diào)用開發(fā)者提供的函數(shù)來處理。基于事件的解析器有一個(gè)XML文檔的數(shù)據(jù)集中視圖,也就是說它集中在XML文檔的數(shù)據(jù)部分,而不是其結(jié)構(gòu)。這些解析器從頭到尾處理文檔,并將類似于-元素的開始、元素的結(jié)尾、特征數(shù)據(jù)的開始等等-事件通過回調(diào)(callback)函數(shù)報(bào)告給應(yīng)用程序。

以下是一個(gè)"Hello-World"的XML文檔范例:

<greeting>
Hello World
</greeting>

  基于事件的解析器將報(bào)告為三個(gè)事件:

開始元素:greeting
CDATA項(xiàng)的開始,值為:Hello World
結(jié)束元素:greeting

  基于事件的解析器不產(chǎn)生描述文檔的結(jié)構(gòu),當(dāng)然如果使用Expat,必要時(shí)它一樣可以在PHP中生成完全的原生樹結(jié)構(gòu)。在CDATA項(xiàng)中,基于事件的解析器不會(huì)得到父元素greeting的信息。然而,它提供一個(gè)更底層的訪問,這就使得可以更好地利用資源和更快地訪問。通過這種方式,就沒有必要將整個(gè)文檔放入內(nèi)存;而事實(shí)上,整個(gè)文檔甚至可以大于實(shí)際內(nèi)存值。

  上面Hello-World的范例雖然包括完整的XML格式,但它是無效的,因?yàn)榧葲]有DTD(文檔類型定義)與其聯(lián)系,也沒有內(nèi)嵌DTD。但是Expat是一個(gè)不檢查有效性的解析器,因此忽略任何與文檔聯(lián)系的DTD。應(yīng)注意的是文檔仍然需要完整的格式,否則Expat(和其他符合XML標(biāo)準(zhǔn)的解析器一樣)將會(huì)隨著出錯(cuò)信息而停止。

編譯Expat
  Expat可以編譯進(jìn)PHP3.0.6版本(或以上)中。從Apache1.3.22開始,Expat已經(jīng)作為Apache的一部分。在Unix系統(tǒng)中,可以通過-with-xml選項(xiàng)配置PHP將其編譯入PHP。

  如果將PHP編譯為Apache的模塊,而Expat將默認(rèn)作為Apache的一部分。在Windows中,則必須要加載XML動(dòng)態(tài)連接庫。

  XML范例:XMLstats
  我們所要討論的范例是使用Expat來收集XML文檔的統(tǒng)計(jì)數(shù)據(jù)。

  對(duì)于文檔中每個(gè)元素,以下信息都將被輸出:

該元素在文檔中使用的次數(shù)
該元素中字符數(shù)據(jù)的數(shù)量
元素的父元素
元素的子元素

  注意:為了演示,我們利用PHP來產(chǎn)生一個(gè)結(jié)構(gòu)來保存元素的父元素和子元素.

用于產(chǎn)生XML解析器實(shí)例的函數(shù)有哪些?
  用于產(chǎn)生XML解析器實(shí)例的函數(shù)為xml_parser_create()。該實(shí)例將用于以后的所有函數(shù)。這個(gè)思路非常類似于PHP中MySQL函數(shù)的連接標(biāo)記。在解析文檔前,基于事件的解析器通常要求注冊(cè)回調(diào)函數(shù)-用于特定的事件發(fā)生時(shí)調(diào)用。Expat沒有例外事件,它定義了如下七個(gè)可能事件:

對(duì)象 XML解析函數(shù) 描述
元素 xml_set_element_handler() 元素的開始和結(jié)束
字符數(shù)據(jù) xml_set_character_data_handler() 字符數(shù)據(jù)的開始
外部實(shí)體 xml_set_external_entity_ref_handler() 外部實(shí)體出現(xiàn)
未解析外部實(shí)體 xml_set_unparsed_entity_decl_handler() 未解析的外部實(shí)體出現(xiàn)
處理指令 xml_set_processing_instruction_handler() 處理指令的出現(xiàn)
記法聲明 xml_set_notation_decl_handler() 記法聲明的出現(xiàn)
默認(rèn) xml_set_default_handler() 其它沒有指定處理函數(shù)的事件

所有的回調(diào)函數(shù)必須將解析器的實(shí)例作為其第一個(gè)參數(shù)(此外還有其它參數(shù))。

  對(duì)于本文最后的范例腳本,需要注意的是它既用到了元素處理函數(shù)又用到了字符數(shù)據(jù)處理函數(shù)。元素的回調(diào)處理函數(shù)通過xml_set_element_handler()來注冊(cè)。

這個(gè)函數(shù)需要三個(gè)參數(shù):

解析器的實(shí)例
處理開始元素的回調(diào)函數(shù)的名稱
處理結(jié)束元素的回調(diào)函數(shù)的名稱
  當(dāng)開始解析XML文檔時(shí),回調(diào)函數(shù)必須存在。它們必須定義為與PHP手冊(cè)中所描述的原型一致。

  例如,Expat將三個(gè)參數(shù)傳遞給開始元素的處理函數(shù)。在腳本范例中,其定義如下:

function start_element($parser, $name, $attrs)

$parser是解析器標(biāo)志,$name是開始元素的名稱,$attrs為包含元素所有屬性和值的數(shù)組。

一旦開始解析XML文檔,Expat在遇到開始元素是都將調(diào)用start_element()函數(shù)并將參數(shù)傳遞過去。

  XML的Case Folding選項(xiàng)
  用xml_parser_set_option()函數(shù)將Case folding選項(xiàng)關(guān)閉。這個(gè)選項(xiàng)默認(rèn)是打開的,使得傳遞給處理函數(shù)的元素名自動(dòng)轉(zhuǎn)換為大寫。但XML對(duì)大小寫是敏感的(所以大小寫對(duì)統(tǒng)計(jì)XML文檔是非常重要的)。對(duì)于我們的范例,case folding選項(xiàng)必須關(guān)閉。

<待續(xù)>

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
特黄特色欧美大片| 亚洲熟女一区二区三区| 哺乳一区二区三区中文视频| 色婷婷激情五月| 一级一片免费视频| 高清欧美精品xxxxx| 亚洲欧美另类久久久精品2019| 中文字幕免费不卡| 免费高清视频精品| 日本japanese极品少妇| 免费在线看成人av| 亚洲欧美另类久久久精品| 300部国产真实乱| 91香蕉在线观看| 国产a∨精品一区二区三区仙踪林| 99精品在线观看视频| 日韩美女视频一区二区在线观看| www.狠狠操.com| 国产超碰人人爽人人做人人爱| 国产福利久久久| 欧美在线免费视频| 日本不卡一区二区三区在线观看| 久草免费福利视频| 日本一本草久在线中文| 国产精品久久久久一区二区国产| 日本高清不卡免费| 国产另类自拍| 人妻少妇无码精品视频区| 你懂得在线视频| 国产日韩欧美精品在线| 悠悠资源av网站| 精品区在线观看| 蜜臀久久99精品久久一区二区| 国产精品免费视频观看| 久久综合给合久久狠狠狠97色69| 中日韩免视频上线全都免费| av观看在线| 你懂的在线观看| 国产精品日韩在线播放| 在线国产中文字幕| jizzjizz日本护士免费| 小鲜肉gaygays免费动漫| 久久久一区二区三区不卡| 中文字幕第38页| 亚洲人成网站色在线观看| 一区二区电影免费观看| 自拍偷拍亚洲激情| 一区二区免费av| 三级全黄的视频在线观看| 国产黄色片在线| 亚洲日本香蕉视频| 国产精品天天av精麻传媒| 国产制服丝袜一区| 日韩av一卡二卡| 国产av无码专区亚洲精品| 黄色软件在线观看| 永久免费毛片在线观看| 日韩视频国产视频| 99视频在线观看一区三区| 欧美午夜一区二区三区| xxxx在线免费观看| 亚洲国产成人精品女人久久久| 欧美日韩午夜精品| 国产精品久久久久av电视剧| 中文字幕av影视| 国产亚洲一本大道中文在线| 久久久久免费精品| 成人午夜sm精品久久久久久久| 欧美影片第一页| 欧美探花视频资源| 青青青视频在线| 国产日韩av一区| 色哟哟一一国产精品| 日韩理伦片在线| 午夜精品久久久久久久久久久久久| 蜜桃视频在线观看一区| 亚洲精品高清无码视频| 日本高清免费在线视频| 欧美成a人片免费观看久久五月天| 国产精品中文字幕亚洲欧美| 国产精品素人视频| 亚洲精选中文字幕| 成人三级视频在线观看一区二区| 激情六月天婷婷| 中文字幕在线精品| 四虎4hu影库永久地址| 91日本韩国| 久久久久国产免费| 人妻互换一二三区激情视频| 在线精品国产成人综合| 99热这里只有成人精品国产| av中文在线资源库| 亚洲xxx在线| 国产浴室偷窥在线播放| 国产精品久久久久久久免费| 国产欧美日韩丝袜精品一区| 在线观看欧美视频| 伊人中文字幕在线观看| 大香一本蕉伊线亚洲网| 国产视频一区在线观看一区免费| 蜜桃视频在线免费| eeuss影院在线观看第一页| 国产精品一区2区3区| 在线视频免费一区二区| 亚洲私人黄色宅男| 国内成人自拍| 欧美顶级xxxxbbbb| 亚洲男男av| eeuss在线观看| 亚洲精品欧美激情| 精品人妻一区二区免费| 国产精品一区二区人妻喷水| 亚洲美腿欧美偷拍| 日韩久久免费视频| 91麻豆产精品久久久久久| 日日夜夜av| 91久久久久久久| 国产乱国产乱老熟300| 99re久久最新地址获取| 美臀av在线| 国产鲁鲁视频在线观看免费| 久久精品久久综合| bl动漫在线观看| 免费在线色视频| 久久免费在线观看视频| 欧美成人精品一区二区男人小说| 日韩欧美精品久久| 日本学生初尝黑人巨免费视频| 国产激情第一页| 日韩在线播放中文字幕| 久久亚洲AV无码| av影音资源网| 中文字幕线观看| 日日噜噜噜噜久久久精品毛片| 欧美高清成人| 午夜欧美巨大性欧美巨大| 日日爽夜夜爽| 亚洲女人初尝黑人巨大| 色先锋最新资源| 女人黄色免费在线观看| 国产一级在线观看www色| 久久午夜免费视频| 全部a∨一极品视觉盛宴| 欧美黑人视频一区| 亚洲自拍偷拍一区二区| 久久爱另类一区二区小说| 成人91在线| 国产成人精品视频一区| 伊人久久综合影院| 在线宅男视频| 日韩精品在线影院| 日韩深夜福利网站| 欧美一区少妇| 黄色一级a毛片| 视频亚洲一区二区| 本田岬高潮一区二区三区| 亚洲精品一区二区三区不| 成年人性生活视频| 国内精品麻豆| 精品久久久久久久一区二区蜜臀| 樱花草国产18久久久久| 色se01短视频永久免费| 日本精品视频一区| 动漫精品视频| 欧美黄色片视频| 永久久久免费浮力影院| 色婷婷综合久久久久| 99中文字幕在线观看| 91麻豆精品国产91久久综合| 97超级碰碰碰| y97精品国产97久久久久久| av午夜电影| 日韩欧美不卡一区| 日韩性xxxx| sese一区| 五月天亚洲综合情| 亚洲免费中文字幕| 一区二区冒白浆视频| 99视频精品免费视频| 在线精品观看| 18禁裸乳无遮挡啪啪无码免费| 人人精品人人爱| 国模无码视频一区二区三区| 日韩在线视频不卡| 在线亚洲不卡| 57pao精品| 国产成人无码a区在线观看视频| 激情福利在线| aa成人免费视频| 国产精品视频免费在线观看| 日本韩国欧美中文字幕| 天堂av在线网站| 久久久久国产精品熟女影院| 国产馆在线观看| 亚洲精品一区二区在线播放∴| 男人的天堂99| 四虎国产精品成人免费4hu| 国产一区观看| 日韩av大片免费看| 国产sm调教视频| 国产肥臀一区二区福利视频| 2019亚洲日韩新视频| 91丨九色丨蝌蚪丨少妇在线观看| 久久久久久久久免费视频| 韩国av在线免费观看| 亚洲精品午夜级久久久久| 国产精品成人一区二区三区吃奶| av免费在线一区| 国产一区二区三区视频| 99久久精品免费看| 日本中文在线一区| 粉嫩av懂色av蜜臀av分享| 亚洲美女久久| 亚洲黄页网在线观看| 91精品国产乱码久久久张津瑜| 欧美成人乱码一二三四区免费| 国产在线观看免费麻豆| 中文字幕在线永久在线视频| 久久精品一区二区三区资源网| 国产日韩一区| 中文字幕一区二区三区人妻四季| 日韩欧美亚洲综合| 99国产盗摄| 亚洲美女网站| 四虎精品一区二区| 亚洲欧美制服丝袜| 欧美丝袜美女中出在线| 国产精品无码久久久久久| 久久精品免视看| 久久精品中文字幕| 欧美色网在线| 丁香婷婷综合激情五月色| 久久先锋影音av鲁色资源| 国产亚洲无码精品| 在哪里可以看毛片| 欧美男女爱爱视频| 最新亚洲视频| 一级性生活免费视频| 美女免费免费看网站| 亚洲 欧美 日韩 国产综合 在线| 国产一级免费黄色片| 无吗不卡中文字幕| 亚洲1区2区3区4区| 自拍亚洲欧美老师丝袜| 五月开心婷婷久久| 成人ww免费完整版在线观看| 国产极品久久久久久久久波多结野| 欧美黄色一级生活片| 1769国内精品视频在线播放| 国产目拍亚洲精品99久久精品| 亚洲色大成网站www| 久久精品一本久久99精品| 国产欧美日韩一区二区三区在线| 亚洲精品无遮挡| 国产精品自拍区| 伦理中文字幕亚洲| 999国产精品视频| 91精品国产麻豆国产在线观看| 稀缺呦国内精品呦| 黄色影院在线播放| 国产精品美女免费看| 日韩成人精品在线| 成人av网站在线观看免费| 欧美黄色一区| 嫩草香蕉在线91一二三区| 免费久久99精品国产| 精品一区二区三区四区五区六区| 97cao在线| 天天色 色综合| 欧美成人一二区| 男女h黄动漫啪啪无遮挡软件| 日韩理论片网站| 99久久婷婷国产综合精品青牛牛| 人人玩人人添人人澡免费| 亚洲激情另类| 日本在线观看视频| 青青草视频网站| 国产一区二区三区中文| 免费看a级黄色片| 久9久9色综合| 日本xxx免费| 国产成人精品在线观看| 欧美一区二区三区成人| 蜜臀av一区二区| 黄频在线免费观看| 91美剧网在线播放| 中文字幕人妻一区二区三区在线视频| 久久综合色天天久久综合图片| 免费网站看电影大片| 久久艹精品视频| 一区二区三区在线观看免费| 午夜在线视频观看日韩17c| 成人在线电影在线观看视频| 国产一在线精品一区在线观看| 在线亚洲欧美日韩| 91一区二区三区在线观看| 视频在线观看99| 色综合视频二区偷拍在线| av影视在线| 亚洲字幕av一区二区三区四区| 色老板在线视频| 国产精品久久久精品四季影院| 1区2区3区视频| 日本aⅴ精品一区二区三区| 久久无码人妻一区二区三区| 成人国产精品久久| 8x拔播拔播x8国产精品| 中文字幕第88页| 777米奇影视第四色| 九色porny丨精品自拍视频| 最近日韩中文字幕中文| 中文字幕在线亚洲三区| 白天操夜夜操| 日韩片欧美片| 久久精品女人天堂| 四虎永久在线精品免费一区二区| 久久躁日日躁aaaaxxxx| 国产一级久久久久毛片精品| 九九九久久久久久| 日韩美女在线观看一区| 亚洲在线免费播放| 国产欧美一区二区精品性色超碰| 久草在线在线视频| 日韩国产欧美精品在线| 国产**成人网毛片九色| 蜜桃视频在线入口www| 国产精品91视频| 国产无套内射久久久国产|