php通過(guò)正則表達(dá)式記取數(shù)據(jù)來(lái)讀取xml的方法

字號(hào):


    這篇文章主要介紹了php通過(guò)正則表達(dá)式記取數(shù)據(jù)來(lái)讀取xml的方法,實(shí)例分析了php正則表達(dá)式的技巧及讀取XML文件的方法,需要的朋友可以參考下
    本文實(shí)例講述了php通過(guò)正則表達(dá)式記取數(shù)據(jù)來(lái)讀取xml的方法。分享給大家供大家參考。具體分析如下:
    xml源文件如下:
    <?xml version="1.0 encoding="UTF-8"?>
    <humans>
    <zhangying>
    <name>張映</name>
    <sex>男</sex>
    <old>28</old>
    </zhangying>
    <tank>
    <name>tank</name>
    <sex>男</sex>
    <old>28</old>
    </tank>
    </humans>
    php文件如下:
    <?php
    $xml = "";
    $f = fopen('person.xml', 'r');
    while($data = fread($f,4096)){
    $xml .= $data;
    }
    fclose( $f );
    // 上面讀取數(shù)據(jù)
    preg_match_all("/\<humans\>(.*?)\<\/humans\>/s",$xml,$humans);
    //匹配最外層標(biāo)簽里面的內(nèi)容
    foreach( $humans[1] as $k=>$human )
    {
    preg_match_all("/\<name\>(.*?)\<\/name\>/",$human,$name);
    //匹配出名字
    preg_match_all("/\<sex\>(.*?)\<\/sex\>/",$human,$sex);
    //匹配出性別
    preg_match_all("/\<old\>(.*?)\<\/old\>/",$human,$old);
    //匹配出年齡
    }
    foreach($name[1] as $key=>$val){
    echo $val." - ".$sex[$key][1]." - ".$old[$key][1]."<br>" ;
    }
    ?>
    希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。