楼主可以利用js的dom或者利用php读取xml文件来解析

解决方案 »

  1.   


    如果使用PHP解析的话可以用PHP自带的XML转换器
    http://jp2.php.net/manual/en/book.xml.php这里是函数:
    http://jp2.php.net/manual/en/ref.xml.php
      

  2.   

    解析xml吧.不管是用javascript还是php.
    具体请参看手册.
      

  3.   

    function substr1($startstr,$endstr,$str)
    {
            $allstrnum = strlen($str);//取总字符串长度
             $indexnum = $allstrnum-strlen(strstr($str,$startstr));//去指定字符串的索引值
    $strright = Substr($str,$indexnum);//去除指定字符串的左边
    $strnum = $allstrnum-strlen(strstr($str,$endstr));//取指定字符串的索引值
    $f = Substr($strright,0,$strnum);//去除右边
    $g = Substr(Trim($f),strlen($startstr));//得到数字
             return Trim($g);
    }$doc=new DOMDocument();
    $doc->load('xxx.xml');
    $titles=$doc->getElementsByTagName("item");
    $vla=$titles->item(0)->nodeValue;echo substr1("Wednesday:","Max Temp",$vla);//显示snny int
      

  4.   

    我想通过实例来学习.所以还麻烦大家从我的例子给个代码来学习学习.谢谢5楼的代码. 但是有个问题, 其中<title>里面的星期是可变的。也就是说不一定是Wednesday,这样你的方法就不行了,而且你的方法得出的值还有冒号,逗号等……等待其他的解法(代码)~~
      

  5.   


    $xml = simplexml_load_file('http://feeds.bbc.co.uk/weather/feeds/rss/5day/id/2315.xml');
    foreach( $xml->channel->item as $item )
    {
    $arr = (array)$item;
    $params = array();
    //title
    if(preg_match( '/^[^:]+:([^,]+)/is',$arr['title'],$tmp ) )
    $params['Title'] = $tmp[1];

    //description
    $strs = explode( ',',$arr['description'] );
    foreach( $strs as $v )
    {
    $tmp = explode( ': ',$v );
    $params[trim($tmp[0])]=$tmp[1];
    }
    //pubdate
    $params['pubDate'] = $arr['pubDate']; echo '<pre>';
    print_r( $params );
    echo '</pre>';

    }
      

  6.   

    两种方法:
    正则和DOM加载操作!都可查看PHP手册!