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