久久亚洲精品成人_国产精品欧美综合亚洲_亚洲va天堂va欧美ⅴa在线_91色视频在线观看_久久影院亚洲_一级黄色片播放_日韩av在线一区_精品一区二区在线看_老头吃奶性行交视频_日韩免费高清视频_天天操天天爽天天干_日本欧美在线视频

首頁 > 開發(fā) > XML > 正文

xml基礎(chǔ)學(xué)習(xí)筆記04

2020-03-22 18:23:11
字體:
供稿:網(wǎng)友
  •   今天繼續(xù)xml學(xué)習(xí),主要是:SimpleXML快速解析文檔、xml與數(shù)組相互轉(zhuǎn)換 。博客中只是簡單的做一個學(xué)習(xí)記錄、積累。更加詳細(xì)的使用方法,可以查看php手冊

      1、SimpleXML快速解析文檔

        前面的三篇博客中提到的主要是DOM解析XML文檔,我們在使用的過程中可以明顯的感覺到DOM解析雖然很強大,但是步驟繁瑣。下面我們說一種相對簡單的XML解析,

        SimpleXML解析xml文件非常簡單,因為它一次性把xml文件解析成一個對象

        還是和以前一樣,程序中的代碼注釋進(jìn)行了詳細(xì)的說明

        

     1 <?php 2 /** 3  * 37集、用SimpleXML快速解析文檔 4  * 知識點:1、SimpleXML 5  *           2、Xpath 6  * SimpleXML解析xml文件非常簡單,因為它一次性把xml文件解析成一個對象  7  */ 8 // simplexml_load_file() 從文件載入xml文檔 9 $simxml = simplexml_load_file('./37.xml');10 // 輸出這個對象,我們看到如圖1 所示的一個 SimpleXMLElement Object,11 // 可以看出SimpleXML將xml文件解析成了一個包含對象和數(shù)組的混合12 //print_r($simxml);13 14 // 找到 title 是 路遙-平凡的世界 并輸出15 echo $simxml->book[1]->title;16 echo '<br />';17 // 看看bookstore下有幾本書,可是使用simplexml下面的count()方法18 echo $simxml->count();19 // 如圖2 我們看到正確的得到了我們期望的結(jié)果20 echo '<br />';21 // 查看每本書中用幾個子元素22 23 $sons = $simxml->children();24 foreach ($sons as $key => $html' target='_blank'>value) {25     echo '分別有'.$value->count().'個子元素:'.$value->getName().'<br />';26 }27 28 ?>

    輸出截圖

      2、38集、xml與數(shù)組相互轉(zhuǎn)換

      

      1 <?php  2 /**  3  *   4  * @authors wxb (http://www.cnblogs.com/wxb0328/)  5  * @date    2014-10-06 23:00:19  6  *   7  * 38集、xml與數(shù)組相互轉(zhuǎn)換  8  *   9  */ 10  11 $simxml = simplexml_load_file('./38.xml'); 12  13 //print_r($simxml); 14 /** 15  * 上面的是37集中開頭SimpleXML解析開頭說過的,我們可以看到SimpleXML的解析,一個SimpleXMLElement Object, 16  * 對象中既有對象又有數(shù)組。比較混亂,一會使用->,一會又使用[],不利于我們運用,現(xiàn)在將其轉(zhuǎn)換為數(shù)組 17  */ 18 /** 19  * 現(xiàn)在我們考慮怎樣轉(zhuǎn)換? 20  * 我們可以看到: 21  *        對象,用 屬性名->屬性值        存儲變量 22  *              用 對象名->屬性名 調(diào)用變量值 23  *        數(shù)組,用 鍵名 => 鍵值        存儲變量 24  *              用 數(shù)組[鍵名]        調(diào)用變量值 25  *        我們完全可以將一個對象看成 一個關(guān)聯(lián)數(shù)組 26  * 有了上面的理解,我們這個xml轉(zhuǎn)數(shù)組就有了思路 27  * 1、我們先使用array 強制轉(zhuǎn)換對象為數(shù)組,但是強制轉(zhuǎn)換無法只能的將你的對象中的對象再轉(zhuǎn)為數(shù)組,它只能夠轉(zhuǎn)換當(dāng)前給定的數(shù)組 28  * 2、基于1的分析,我們考慮寫一個方法,這個方法就是將對象強制轉(zhuǎn)換為數(shù)組 29  * 3、在這個方法中我們使用is_array() 判斷 如果是數(shù)組就不用轉(zhuǎn)換,如果不是數(shù)組就轉(zhuǎn)換 30  * 4、然后我們遞歸的調(diào)用這個方法 31  * 好了,思路有了!現(xiàn)在開始做 32  */ 33  function XmlToArr($simpleXml) { 34      /* 35      這里是十八哥在視屏中的實例,如圖3  36      $arr = (array) $simpleXml; 37     foreach ($arr as $key => $value) { 38         if($value instanceof SimpleXMLElement || is_array($value)){ 39             $arr[$key] = XmlToArr($value); 40         } 41     } 42     */ 43     /* 44     * 在十八個的實例中我發(fā)現(xiàn),我發(fā)現(xiàn)我們要判斷并且轉(zhuǎn)換的不光是xml的對象,在數(shù)組的情況下也需要查看數(shù)組是否是二維的, 45     * 如果是二維數(shù)組我們也需要繼續(xù)遞歸調(diào)用方法,轉(zhuǎn)換。 46     * 看到這里,我們上面的的思路3就是有錯誤的,我們不能只是簡單的判斷是數(shù)組就不轉(zhuǎn)化了,但是,我們可以這樣做,當(dāng)這個 47     * 數(shù)組是一維數(shù)組的時候,就不需要轉(zhuǎn)化了,但是怎樣判斷這個數(shù)組是一維數(shù)組? 48     * 雖然這里是可以用程序判斷的,但是要自己寫,php并沒有提供特定的函數(shù)方法。 49     * 但是我們可以發(fā)現(xiàn),當(dāng)時一維數(shù)組時,數(shù)組能的值都是標(biāo)量: 50     * 標(biāo)量變量是指那些包含了 integer、float、string 或 boolean的變量,而 array、object 和 resource 則不是標(biāo)量。  51     * 基于這個思路,修改函數(shù)如下: 52     * 判斷如果是一個標(biāo)量,此時我們已經(jīng)到了一個數(shù)組的值的部分,那我們返回這個值給遞歸調(diào)用里面的$arr[$key]($arr[$key] = XmlToArr($value);) 53      */ 54      if(is_scalar($simpleXml)) { 55          return $simpleXml; 56      }else { 57          //如果不是標(biāo)量,那此時這個$simpleXml 肯定是array、object 和 resource 其中一個,但是在xml中不可能是resource了 58          // 無論你是array還是object,統(tǒng)統(tǒng)強制轉(zhuǎn)化 59          $arr = (array) $simpleXml; 60          // 循環(huán)這個數(shù)組,然后遞歸調(diào)用這個海曙 61         foreach ($arr as $key => $value) { 62         $arr[$key] = XmlToArr($value); 63         } 64      } 65      66     return $arr; 67 } 68 // 輸出到頁面,我們可以看到如圖4,結(jié)果是完全一樣的 69 print_r(XmlToArr($simxml)); 70  71 /***************************************************** 72     現(xiàn)在我們再將數(shù)組轉(zhuǎn)化為xml 73 *****************************************************/ 74 // 首先我們定義這個數(shù)組 75  76                      77 $xmlArr = Array( 78     'title' => '路遙-平凡的世界', 79     'price' => 43, 80     'comment' => array( 81             0 => 'good book', 82             1 => 'very help', 83             2 => 'I think the book is best' 84         ) 85 ); 86 // 數(shù)組轉(zhuǎn)化為xml 方法 87 function arrToxml($arr,$node = null) { 88     if ($node === null) { 89         $sx = new SimpleXMLElement("<?xml version='1.0' encoding='utf-8' ?><bookstore></bookstore>"); 90     }else{ 91         $sx = $node; 92     } 93      94     foreach ($arr as $key => $value) { 95         if (is_scalar($value)) { 96             /* 97             $sx->addChild($key,$value); 98             上面這種輸出雖然也成功的看到了,但是xml抱錯了(如圖5),原因是xml的標(biāo)簽,節(jié)點不能以數(shù)字開頭 99             下面我們簡單的做個判斷,然后是數(shù)字的我們給拼接一個字母前綴100             成功輸出(如圖6)101             */102 103             if(is_numeric($key)) {104                 $sx->addChild('comm_'.$key,$value);105             }else{106                 $sx->addChild($key,$value);107             }108             109         }else {110             $tmpNode = $sx->addChild($key);111             arrToxml($value,$tmpNode);112         }113     }114     return $sx->saveXML();115 }116 header("content-type:text/xml");117 echo arrToxml($xmlArr);118 /******************************************119     如果要運行上面的程序,請將兩部分分開運行(可以先注釋掉其中的某個部分)120 ******************************************/121 ?>

    圖3

    圖4

    圖5

    圖6

      好了,這篇就先這么多吧,代碼中的注釋很關(guān)鍵,由于沒有將每一次運行的代碼都寫入到新的文件,都是先編寫一部分,完成以后,再注釋掉,所以大家在看的時候,一定

    要仔細(xì)看代碼的注釋,

      也不是我這人太爛,只是相同的說明,沒有必要在寫博客的時候再提出來,既然都是干這個的,我相信大家都是有看注釋的習(xí)慣的。而我就在寫代碼的時候把注釋盡量寫的

    詳細(xì)點,這樣,寫博客時我也能節(jié)省點時間,畢竟周末時間是寶貴的呀!

      雖然只是一點學(xué)習(xí)筆記,但是我覺得總是可以幫助到一些人,而且把東西分享出來,給別人開的東西也不能太差。就是這樣的想法,我在學(xué)習(xí)的時候可能會更加用心。需要

    學(xué)習(xí)的東西還有很多,沒有辦法做更多的深入的研究。這些筆記就算是xml的入門吧,以后工作中再去了解更多的xml的東西。

    PHP編程

    鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

  • 發(fā)表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發(fā)表
    精品久久久久久久久久久久久久久久久 | 在线免费a视频| 免费日韩在线视频| 国产成人自拍视频在线| 色屁屁影院www国产高清麻豆| 中国老头性行为xxxx| 国产精品国产av| 亚洲色图欧美视频| 成人免费看视频| heyzo一本久久综合| 国产精品全国免费观看高清| 无吗不卡中文字幕| 欧美一区二区福利视频| 一区二区三区日韩在线| 97热在线精品视频在线观看| 96成人在线视频| 色播亚洲视频在线观看| 男人天堂网视频| 大尺度在线观看| 亚洲AV成人无码网站天堂久久| 1级黄色大片儿| 亚洲国产精品久久久久久6q | 国产精品视频一二区| 美女精品一区| 亚洲精品在线视频免费观看| 国产男女猛烈无遮挡在线喷水| 精品午夜福利视频| www.日本在线观看| 国产传媒日韩欧美成人| 亚洲自拍偷拍综合| 亚洲成人在线视频播放| 久久大大胆人体| 444亚洲人体| www.69av| 美女又爽又黄视频毛茸茸| 黄色激情视频在线观看| 污视频软件在线观看| www.亚洲人| 日韩欧美在线观看视频| 在线观看不卡av| 国产精品高清在线观看| 在线电影看在线一区二区三区| 天天天干夜夜夜操| 国产第一页浮力| 精品国产九九九| av电影在线观看不卡| 色综合色综合色综合| 中文字幕亚洲综合久久| 91久久爱成人| 亚洲乱码国产一区三区| 欧美成人777| 亚洲色大成网站www| 亚洲视频在线一区观看| 亚洲欧美日韩第一区| 97视频热人人精品| 国产又黄又猛视频| 久久精品视频6| 国模一区二区三区白浆| 日韩欧美国产视频| 久久久亚洲成人| 日韩av一级大片| 偷偷色噜狠狠狠狠的777米奇| 91丨九色丨海角社区| 91亚洲国产成人精品一区二区三| 欧美一卡2卡3卡4卡| 97视频在线观看网址| 特级西西444| 免费黄色激情视频| 麻豆91在线观看| 一本在线高清不卡dvd| 久久免费高清视频| 欧洲精品在线播放| 青青草原免费观看| 国产成人精品免费看| 制服丝袜中文字幕亚洲| 国产日韩在线亚洲字幕中文| 激情网站五月天| 色老头在线视频| 国产精品每日更新在线播放网址| 伊人激情综合网| 日本视频一区二区不卡| 受虐m奴xxx在线观看| 日日摸夜夜添夜夜添亚洲女人| 日本久久精品电影| 国产精品久久久久久久久久| 欧在线一二三四区| 怡红院成永久免费人全部视频| 国产精品久久久久久久久搜平片| 久久精品国产一区| 肉大捧一出免费观看网站在线播放 | 欧美成aaa人片免费看| 欧美日韩一级在线| 国产一国产二国产三| 久久综合九色综合久久久精品综合| 日韩经典第一页| 亚洲免费不卡| 狠狠躁夜夜躁人人爽天天高潮| 91免费观看国产| 神马国产精品影院av| 成人在线免费高清视频| 午夜一级黄色片| 亚洲成av人**亚洲成av**| 97视频免费在线观看| 欧美激情国内自拍| 婷婷久久久久久| 91精品中文字幕一区二区三区| 国产精品美女黄网| 无码人妻精品中文字幕| 久久久久久久久久久电影| 另类天堂视频在线观看| 日本免费观看网站| 奇米精品一区二区三区在线观看一| 日韩欧美一二区| 日韩免费电影一区二区| 久久精品国产亚洲av麻豆色欲| 国产精品成人免费在线| 国产精品久久婷婷六月丁香| a级大片在线观看| 91浏览器在线视频| 欧美洲成人男女午夜视频| 国产国语老龄妇女a片| 国产精品77777| 久久天天躁狠狠躁夜夜爽蜜月 | www.日本少妇| 日韩一级免费毛片| 亚洲成年人在线| 亚洲乱码日产精品bd在线观看| 中文字幕乱码视频| 91精品久久久久久久99蜜桃| 警花观音坐莲激情销魂小说| 国产精品高潮呻吟AV无码| 日韩亚洲欧美一区二区三区| www.69av| 美日韩一区二区| 久久精品视频亚洲| av漫画在线观看| 久久免费看少妇高潮| 国产精品对白刺激| 小泽玛利亚一区| 亚洲图片自拍偷拍| 玛丽玛丽电影原版免费观看1977| 亚洲精品一区二三区| 欧美一级片免费看| 无码人妻精品一区二区三区在线| 免费av网站大全久久| 欧美激情videoshd| 韩国三级hd中文字幕| 亚洲成在线观看| 亚洲毛片aa| 午夜在线观看视频18| 精品自拍视频在线观看| 无码人妻精品一区二区中文| 亚洲成av人片| 成人毛片100部免费看| 日韩av中文在线观看| 欧美成人三级视频网站| 一级特黄曰皮片视频| 欧美性高潮在线| 无码专区aaaaaa免费视频| 国产精品一二三四区| 国产精品中文久久久久久久| 草久久免费视频| 欧美精品一区二区三区蜜桃| 在线观看日本www| 日本一区二区三区免费乱视频| 国产区二精品视| 国产av无码专区亚洲av| 久久夜色精品国产亚洲aⅴ| 日韩人妻一区二区三区| 日韩欧美在线网址| 国产又黄又大又粗视频| 国产亚洲欧美一级| 先锋影音亚洲资源| 精油按摩中文字幕久久| 国产日产久久高清欧美一区| 一级全黄裸体免费视频| 麻豆国产精品va在线观看不卡 | 桥本有菜av在线| 国产精品一区二区91| 91九色对白| 欧美熟女一区二区| 欧美在线一级视频| 中文在线观看av| 久久国产精品影片| www.毛片.com| 中文字幕亚洲天堂| 免费在线视频观看| 国产一区二区三区免费视频| 久久精品一区二区三区四区五区| 精品少妇一区二区三区免费观看 | 在线免费看av网站| 亚洲国产精品电影在线观看| 熟女丰满老熟女熟妇| 在线观看91av| 国产传媒第一页| 在线播放91灌醉迷j高跟美女| 国产精品熟女一区二区不卡| 色噜噜狠狠一区二区三区果冻| 免费一级特黄录像| 狠狠操狠狠色综合网| 91人人澡人人爽| 欧美日韩成人一区| 大又大又粗又硬又爽少妇毛片| 欧美大片日本大片免费观看| 99国产精品免费| 亚洲精品不卡在线| 久久综合综合久久| 久久久久久久久久久av| 国产高清视频免费| 国产欧美va欧美va香蕉在| 性猛交xxxx| 久久久久久欧美精品色一二三四| 狠狠色丁香久久婷婷综合丁香| 日本免费高清一区| 国产精品久久久久婷婷| 四季av一区二区| 欧美一个色资源| 成年人网站在线观看视频| 久久综合久久八八| 国产欧美久久久精品免费| 成人黄色av网站| 国产精品一区二区男女羞羞无遮挡 | 91视视频在线直接观看在线看网页在线看| 日韩影视精品| 国产精品国产三级国产普通话三级| 农村妇女精品一二区| 在线观看国产日韩| 你懂得视频在线观看| 中文字幕久久亚洲| 在线黄色av网站| 99r国产精品视频| 97久久精品人人做人人爽| 日本成人在线免费视频| 欧美剧在线免费观看网站 | 欧美激情小视频| 蜜臀av在线观看| 天天人人精品| 爽爽淫人综合网网站| 国产精品高清在线| 中文字幕手机在线视频| 99re热这里只有精品视频| 青青草综合视频| 五月综合激情网| 性欧美18—19sex性高清| 日韩经典中文字幕| 国产精品毛片久久久久久久av| 91色精品视频在线| 91在线免费播放| 午夜视频在线网站| 亚洲欧美精品一区二区| 久久精品99北条麻妃| 久久婷婷国产综合尤物精品| 亚洲精品伦理在线| 91无套直看片红桃在线观看| 青青久久av北条麻妃海外网| 国产大陆精品国产| 日韩av.com| 精品国产依人香蕉在线精品| 午夜福利一区二区三区| 欧美 另类 交| 日本一区二区在线播放| 欧美一级特黄高清视频| 国内精品美女av在线播放| 男女性色大片免费观看一区二区| 东北少妇不带套对白| 精品久久久久久久久久久久久久久| 国产日韩久久久| 日韩欧美在线电影| 欧美午夜免费电影| 中文字幕一区二区人妻| 日韩免费电影一区二区三区| 欧美日产国产精品| 国产又大又黄又爽| 日韩一级片一区二区| 精品精品欲导航| 国产不卡精品视频| 波多野结衣之无限发射| 亚洲毛片一区二区| 日韩制服丝袜先锋影音| 深夜黄色小视频| 久久亚洲精品一区| 99国产一区二区三精品乱码| 水蜜桃av无码| 国产精品久久久| 一区二区三区丝袜| 一级片中文字幕| 永久免费精品视频网站| 欧美成人a视频| 日韩高清国产一区在线| 在线a免费观看| 国产成+人+综合+亚洲欧美丁香花| 中文幕一区二区三区久久蜜桃| 国产这里有精品| 久久亚洲午夜电影| 91精品国产91久久久久久最新毛片 | 九九热免费精品视频| 欧美精品午夜视频| 欧美激情综合五月色丁香小说| 国产jizz18女人高潮| 美国av一区二区三区| 666欧美在线视频| 日韩高清国产一区在线| 欧美性猛交xx| 国产精品久久久久久久久久免费 | 日本黄色小说视频| 亚洲国产精品毛片| 亚洲人成在线免费观看| www久久精品| 国产稀缺真实呦乱在线| 妞干网这里只有精品| 中文字幕日韩在线观看| 久久久午夜精品| av大片免费观看| 成人免费观看在线| 欧美大片欧美激情性色a∨久久| 国产精品高潮呻吟| 国产精品久久久久久久一区二区 | 亚洲AV无码成人片在线观看| 6080国产精品| 国产99视频精品免费视频36| 欧美美女直播网站| 精品午夜久久福利影院| 国产精品视频看看| a级片一区二区| 97久久精品人搡人人玩| 亚洲妇女屁股眼交7| 黑人精品一区二区三区| 精品无码av一区二区三区| av观看久久| 亚洲欧美国产精品专区久久| 99久久久久久| 亚洲精品一区二区二区| 一级片免费在线观看视频| 99久久99久久精品国产片| 欧美精品一区二区三区一线天视频 | 美女洗澡无遮挡| 相泽南亚洲一区二区在线播放| 国产午夜精品免费一区二区三区 | 青青草原播放器| 国产一区二区三区色淫影院| 亚洲欧美制服综合另类| 亚洲欧美日韩精品久久久久| 性生交大片免费看女人按摩| 免费观看av网站| 欧美精品在欧美一区二区| 国产成人精品日本亚洲| 精品嫩草影院久久| 国产精品免费丝袜| 天堂av资源网| 九九视频免费在线观看| av视屏在线播放| 美女视频久久| 久久久在线观看| 欧美一区二区福利在线| 久久精子c满五个校花| 色窝窝无码一区二区三区| 熟女少妇a性色生活片毛片| 黄色网页免费在线观看| 97人人模人人爽视频一区二区 | 国产av无码专区亚洲av麻豆| 日韩影视一区二区三区| 欧美变态另类刺激| 国产免费一区二区| 欧美二区乱c黑人| 91精品一区二区三区久久久久久| 久久久久九九视频| 性做久久久久久久| 中文字幕在线观看成人| 免费在线观看污网站| 一本一生久久a久久精品综合蜜| 国产成人福利视频| 亚洲乱码国产乱码精品精| 红桃av永久久久| 国产亚洲福利社区一区| 麻豆久久久久久久| 国产精品无码久久av| 91插插插插插插| aaa黄色大片| 国产精品wwwww| 亚洲欧美日产图| 2019国产精品视频| 精品视频9999| 亚洲欧美在线看| 欧美一卡二卡在线| 午夜视频久久久久久| 中文字幕精品三区| 懂色av一区二区三区免费观看| 日韩专区第一页| 色老头一区二区| 亚洲精品在线观看av| 婷婷国产成人精品视频| 岛国精品一区二区三区| 欧美午夜aaaaaa免费视频| 97久久国产亚洲精品超碰热| 欧美高清视频一区| 91麻豆国产精品| 欧美一级片在线播放| 久久久久久久久亚洲| www.亚洲天堂| 亚洲免费高清视频| 日韩欧美国产麻豆| 欧美日韩一区二区三区免费看| 一区二区三区四区高清精品免费观看 | 国产精久久久久| 欧美精品99久久| 欧美精品卡一卡二| 久久久久久久久久久久久国产| 视频一区亚洲| 免费看成人av| 久久国产精品一区二区三区四区 |