最近在做一个DZ二次开发的项目,里面用到生成xml的操作,贴出来,有供大家参考
$path = 'list/OMTV.xml'; //生成xml存放路径
if(file_exists($path)) unlink($path); $handle = fopen($path, 'w') ;
$xmlContent = "";//定义xml内容
//开始写入
if($handle) { if(fwrite($handle, $xmlContent)) { fclose($handle); } }
举例说:以下是我在dz里面做的,相信聪明的你一定会举一反三的哦
<?php require_once './include/common.inc.php';
require_once DISCUZ_ROOT.'./include/forum.func.php';
$path = 'list/OMTV.xml';
if(file_exists($path)) unlink($path);
$handle = fopen($path, 'w') ;
$xmlContent .= '<?xml version="1.0" encoding="UTF-8"?>' ;
$xmlContent .= '<rss version="2.0" xmlns:tivic="http://10.1.40.16:8080/dtds/podcast-1.0.dtd">';
$xmlContent .= '<channel>';
$xmlContent .= '<title>欧美电视剧</title>' ;
$xmlContent .= '<description>欧美电视剧</description>' ;
$xmlContent .= '<link>http://www.tivic.com</link>';
$xmlContent .= '<lastBuildDate>Tue, 20 Nov 2008 19:50:00 GMT</lastBuildDate>' ;
//查询所有板块 $query = $db->query("select * from cdb_posts where fid = 7 and addxml = 1");
$array = array();
while($arr = $db->fetch_array($query)) { //$arr['message'] = substr($arr['message'],0,250);
$time = gmdate('r',$arr['dateline']);
$array[] = $arr; $xmlContent .='<item>';
$xmlContent .='<title>'.$arr['subject'].'</title>';
$xmlContent .= '<description>'.$arr['message'].'</description>'; //$xmlContent .= '<link/>'; $xmlContent .= '<guid>'.$arr['tid'].'</guid>'; $xmlContent .= '<link>../viewthread.php?tid='.$arr['tid'].'</link>'; $xmlContent .= '<pubDate>'.$time.'</pubDate>'; $xmlContent .= '<tivic:fontcolor>0x33dddf</tivic:fontcolor>'; $xmlContent .= '<tivic:status>0</tivic:status>'; $xmlContent .= '<tivic:saveDir>'.$arr['seedPath '].'</tivic:saveDir>'; $xmlContent .= '<tivic:savename>'.$arr['seedPath '].'</tivic:savename>'; $xmlContent .= '<tivic:duration>'.$arr['times'].'</tivic:duration>'; $xmlContent .= '<tivic:image herf="http://'.$arr['imgPath'].'/'.$arr['imgSrc'].'"/>'; $xmlContent .= '<tivic:casting>片 名:'.$arr['subject'].' 导 演:'.$arr['director'].' 主 演:'.$arr['actors'].' 地 区:'.$arr['city'].' 对 白:'.$arr['language'].' </tivic:casting>'; $xmlContent .='<tivic:size>'.$arr['size'].'</tivic:size>'; $xmlContent .='<tivic:fee>3</tivic:fee>'; $xmlContent .='</item>'; } $xmlContent .='</channel>'; $xmlContent .='</rss>'; if($handle) { if(fwrite($handle, $xmlContent)) { fclose($handle); } } ?>
生成的xml如下:
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:tivic="http://10.1.40.16:8080/dtds/podcast-1.0.dtd"><channel><title>电影资源区</title><description>电影资源区</description><link>http://www.tivic.com</link><lastBuildDate>Tue, 20 Nov 2008 19:50:00 GMT</lastBuildDate><item><title>我的野蛮女友</title><description>来自远古的天体,一手打造了太阳系这个家庭,打造了养育了人类的蓝色星球——地球,并养育着这星球上的生物,多少亿年,仍在发出自己最耀眼的光芒。 月,这个地球的“小弟”,自地球出生后不久便与之做伴,在夜空中静静陪伴着地球及地球上的生灵,承受着无数小陨星的撞击,不曾倦怠过…… 日,喷发着阳刚之气,月,寄托着那份柔情,两者缺一不可,作为人类,同样有着男性的阳刚和女性的柔情。 孙楠,一个本名不见经传的名字,却因上天注定而变得不同凡响,经历过多少风雨挫折,接受了多少艰辛世事之洗礼,他歌曲中那份壮志豪情是对这世界的呐喊与宣泄,那份柔情给予着受伤的人心灵的安慰和抚摩,至今未曾停歇过…… 如日般,声音宽广嘹亮,极具金属般的冲击感,照耀着每个人的心灵; 如月般,声音优美柔缓,极具亲人般的亲切感,在每个夜晚陪伴我们入眠…… 与日月争辉,非常人可想; 与日月争辉,非孙楠莫属; 与日月争辉,尽显一哥本色!!!</description><guid>68</guid><link>../viewthread.php?tid=68</link><pubDate>Thu, 19 Jun 2008 07:03:35 +0000</pubDate><tivic:fontcolor>0x33dddf</tivic:fontcolor><tivic:status>0</tivic:status><tivic:saveDir></tivic:saveDir><tivic:savename></tivic:savename><tivic:duration>01:22:21</tivic:duration><tivic:image herf="http://uploadfiles/2008-06-19/96311213859015.gif"/><tivic:casting>片 名:我的野蛮女友导 演:林明君 主 演:未知地 区:港台 对 白:普通话 </tivic:casting><tivic:size>123</tivic:size><tivic:fee>3</tivic:fee></item><item><title>爱情三十六计</title><description>爱情三十六计走为上策</description><guid>69</guid><link>../viewthread.php?tid=69</link><pubDate>Fri, 20 Jun 2008 01:58:08 +0000</pubDate><tivic:fontcolor>0x33dddf</tivic:fontcolor><tivic:status>0</tivic:status><tivic:saveDir></tivic:saveDir><tivic:savename></tivic:savename><tivic:duration>01:22:21</tivic:duration><tivic:image herf="http://uploadfiles/2008-06-20/79781213927088.gif"/><tivic:casting>片 名:爱情三十六计导 演:林明君 主 演:未知地 区:港台 对 白:普通话 </tivic:casting><tivic:size>123</tivic:size><tivic:fee>3</tivic:fee></item></channel></rss>