首页 > 开发 > PHP > 正文

PHP中使用xmlreader读取xml数据示例

2024-05-04 23:29:32
字体:
来源:转载
供稿:网友
这篇文章主要介绍了PHP中使用xmlreader读取xml数据示例,本文示例相对简单,只包含了一个读取功能,需要的朋友可以参考下
 
 

有一个XML文件,内容如下:

 

复制代码代码如下:

<?xml version="1.0"?>  
<shows>  
    <show>  
        <name>Simpsons</name>  
        <channel>FOX</channel>  
        <start>8:00 PM</start>  
        <duration>30</duration>  
    </show>  
    <show>  
        <name>Law & Order</name>  
        <channel>NBC</channel>  
        <start>8:00 PM</start>  
        <duration>60</duration>  
    </show>  
</shows>  

 

这里我们使用XMLReader扩展来解析和处理该文件,XMLReader还有一个好处是以Stream的形式读取数据,即纵然面对超大的xml文件依然可以从容处理。下面是我们针对以上文件的处理方式:

 

复制代码代码如下:

$indexUrl='http://www.xxx.com/xxx.xml';   
$reader = new XMLReader();   
$reader->open($indexUrl);   
$countElements = 0;   
  
while ($reader->read()){   
        if($reader->nodeType == XMLReader::ELEMENT){   
            $nodeName = $reader->name;   
        }   
        if($reader->nodeType == XMLReader::TEXT && !empty($nodeName)){   
            switch($nodeName){   
                case 'name':   
                    $name = $reader->value;   
                    break;   
                case 'channel':   
                    $channel = $reader->value;   
                    break;   
                case 'start':   
                    $start = $reader->value;   
                    break;   
                case 'duration':   
                    $duration = $reader->value;   
                    break;   
            }   
        }   
 }   
$reader->close();   

 

 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表