xmlize解析器

用于解析XML格式文件,比较好用.以前在Joomla中还多用XMLparsing,这个比较起来轻便灵活。他的优点有时候也会成为他的缺点,因为是将整个XML文件读入到数组中进行处理所以当XML文件变很大的时候,你会有点郁闷的。我曾经用他处理一个有一万多行的XML,在读取后又进行了一下排序结果当时就死机一点不含糊的 ^_^ 

解析如下一个XML文件

<? xml version="1.0" encoding="gb2312" ?>
< NewsList >
     
                          
< News >
                              
< NewsId > 1286 </ NewsId >
                              
< Title > 广州市市场准入条件 </ Title >
                             
< InputDate > 2005-03-04 16:52:00 </ InputDate >
                             
< Type > 特许经营网 </ Type >
                       
</ News >

                        
< News >
                            
< NewsId > 1284 </ NewsId >
                            
< Title > 上海市场准入条件 </ Title >
                          
< InputDate > 2005-03-04 16:51:00 </ InputDate >
                           
< Type > 新闻 </ Type >
                       
</ News >

                       
< News >
                           
< NewsId > 1281 </ NewsId >
                           
< Title > 识房产证的真伪 </ Title >
                          
< InputDate > 2005-03-04 16:41:00 </ InputDate >
                          
< Type > 经营新闻 </ Type >
                           
</ News >

                      
< News >
                           
< NewsId > 1274 </ NewsId >
                          
< Title > 上海新天地经营模式分析 </ Title >
                          
< InputDate > 2005-03-04 14:51:00 </ InputDate >
                         
< Type > 特许新闻 </ Type >
                    
</ News >
</ NewsList >

PHP程序如下:

<? php
$xmlfile   =   " ../xml/news/ " . " Type " . $v . " .xml " ;
   
if ( file_exists ( $xmlfile )){ // 如果存在XML文件则进行解析
         $filehander   =   fopen ( $xmlfile , " r " );
        
$date   =   fread ( $filehander , filesize ( $xmlfile ));
        
$xml   =  xmlize( $date );

        
$len   =   $xml [ " NewsList " ][ " # " ][ " News " ];
        
$lenth   =   sizeof ( $len );
        
// 将解析的数据存储于数组变量中
         for ( $i = 0 ; $i < $lenth ; $i ++ ){
               
               
$rs [ $j ][ " NewsId " =    $len [ $i ][ " # " ][ " NewsId " ][ " 0 " ][ " # " ];
               
$rs [ $j ][ " Title " =    $len [ $i ][ " # " ][ " Title " ][ " 0 " ][ " # " ];
               
$rs [ $j ][ " InputDate " =    $len [ $i ][ " # " ][ " InputDate " ][ " 0 " ][ " # " ]; 
               
$rs [ $j ++ ][ " Type " =   $len [ $i ][ " # " ][ " Type " ][ " 0 " ][ " # " ];
               
        }

   }
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值