当前位置:Gxlcms > PHP教程 > PHP生成RSS文件类实例_php技巧

PHP生成RSS文件类实例_php技巧

时间:2021-07-01 10:21:17 帮助过:3人阅读

本文实例讲述了PHP生成RSS文件类文件。分享给大家供大家参考。具体如下:

PHP RSS 生成类实例代码如下:
代码如下:<?php
if (defined('_class_rss_php')) return;
define('_class_rss_php教程',1);
/**

* 使用说明:
* $rss = new rss('redfox','http://jb51.net/',"redfox's blog");
* $rss->additem('rss class',"http://www.gxlcms.com","xxx",date());
* $rss->additem(...);
* $rss->savetofile(...);
*/

class rss {
//public
$rss_ver = "2.0";
$channel_title = '';
$channel_link = '';
$channel_description = '';
$language = 'zh_cn';
$copyright = '';
$webmaster = '';
$pubdate = '';
$lastbuilddate = '';
$generator = 'redfox rss generator';

$content = '';
$items = array();

function rss($title, $link, $description) {
$this->channel_title = $title;
$this->channel_link = $link;
$this->channel_description = $description;
$this->pubdate = date('y-m-d h:i:s',time());
$this->lastbuilddate = date('y-m-d h:i:s',time());
}

function additem($title, $link, $description ,$pubdate) {
$this->items[] = array('titile' => $title ,
'link' => $link,
'description' => $description,
'pubdate' => $pubdate);
}

function buildrss() {
$s = " ";
// start channel
$s .= " ";
$s .= " "
$s .= "{$this->channel_link} ";
$s .= "{$this->channel_description} ";
$s .= "{$this->language} ";
if (!emptyempty($this->copyright)) {
$s .= "{$this->copyright} ";
}
if (!emptyempty($this->webmaster)) {
$s .= "{$this->webmaster} ";
}
if (!emptyempty($this->pubdate)) {
$s .= "{$this->pubdate} ";
}

if (!emptyempty($this->lastbuilddate)) {
$s .= "{$this->lastbuilddate} ";
}

if (!emptyempty($this->generator)) {
$s .= "{$this->generator} ";
}

// start items
for ($i=0;$iitems),$i++) {
$s .= " ";
$s .= " ";
$s .= "{$this->items[$i]['link']} ";
$s .= "items[$i]['description']}]]> ";
$s .= "{$this->items[$i]['pubdate']} ";
$s .= " ";
}

// close channel
$s .= " ";
$this->content = $s;
}

function show() {
if (emptyempty($this->content)) $this->buildrss();
header('content-type:text/xml');
echo($this->content);
}

function savetofile($fname) {
if (emptyempty($this->content)) $this->buildrss();
$handle = fopen($fname, 'wb');
if ($handle === false) return false;
fwrite($handle, $this->content);
fclose($handle);
}
}
?>

希望本文所述对大家的PHP程序设计有所帮助。

人气教程排行