Welcome 微信登录

首页 / 网页编程 / PHP / PHP生成RSS文件类实例

本文实例讲述了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.jb51.net","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 = "<!--l version="1.0" encoding="gb2312"--> ";
       // start channel
       $s .= " ";
       $s .= " "
       $s .= "<link />{$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 .= "<link />{$this->items[$i]["link"]} ";
           $s .= "<!--data[{$thi-->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程序设计有所帮助。