PHP生成RSS文件类实例


Posted in PHP onDecember 05, 2014

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

PHP RSS 生成类实例代码如下:

<?php 

if (defined('_class_rss_php')) return; 

define('_class_rss_php教程',1); 

/** 

 

 *  使用说明: 

 *  $rss = new rss('redfox','http://3water.com/',"redfox's blog"); 

 *  $rss->additem('rss class',"https://3water.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 = "<!--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程序设计有所帮助。

PHP 相关文章推荐
用php实现像JSP,ASP里Application那样的全局变量
Jan 12 PHP
Views rows style模板重写代码
May 16 PHP
PHP swfupload图片上传的实例代码
Sep 30 PHP
php中操作memcached缓存进行增删改查数据的实现代码
Aug 15 PHP
避免Smarty与CSS语法冲突的方法
Mar 02 PHP
PHP将进程作为守护进程的方法
Mar 19 PHP
php提高网站效率的技巧
Sep 29 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
thinkPHP框架实现的无限回复评论功能示例
Jun 09 PHP
Laravel Eloquent ORM 多条件查询的例子
Oct 10 PHP
PHP中strval()函数实例用法
Jun 07 PHP
php实现两表合并成新表并且有序排列的方法
Dec 05 #PHP
ThinkPHP中redirect用法分析
Dec 05 #PHP
php查询ip所在地的方法
Dec 05 #PHP
smarty实现多级分类的方法
Dec 05 #PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 #PHP
常见php数据文件缓存类汇总
Dec 05 #PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
Dec 05 #PHP
You might like
常用星际术语索引(新手指南)
2020/03/04 星际争霸
php程序之die调试法 快速解决错误
2009/09/17 PHP
php 文本文件的读取效率
2012/02/10 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
php简单获取文件扩展名的方法
2015/03/24 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
php 7新特性之类型申明详解
2017/06/06 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
Javascript 布尔型分析
2008/12/22 Javascript
浅谈javascript原型链与继承
2015/07/13 Javascript
js获取当前年月日-YYYYmmDD格式的实现代码
2016/06/01 Javascript
微信小程序 教程之注册页面
2016/10/17 Javascript
bootstrap为水平排列的表单和内联表单设置可选的图标
2017/02/15 Javascript
全新打包工具parcel零配置vue开发脚手架
2018/01/11 Javascript
jquery实现的分页显示功能示例
2019/08/23 jQuery
微信小程序实现打开并下载服务器上面的pdf文件到手机
2019/09/20 Javascript
django简单的前后端分离的数据传输实例 axios
2020/05/18 Javascript
Vue 打包体积优化方案小结
2020/05/20 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
Python打包可执行文件的方法详解
2016/09/19 Python
python数据结构之链表的实例讲解
2017/07/25 Python
python 通过logging写入日志到文件和控制台的实例
2018/04/28 Python
win10下tensorflow和matplotlib安装教程
2018/09/19 Python
TensorFlow绘制loss/accuracy曲线的实例
2020/01/21 Python
关于TensorFlow新旧版本函数接口变化详解
2020/02/10 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
浅谈python锁与死锁问题
2020/08/14 Python
公积金单位接收函
2014/01/11 职场文书
小学生期末自我鉴定
2014/01/19 职场文书
年度评优评先方案
2014/06/03 职场文书
2014年出纳工作总结与计划
2014/12/09 职场文书
2015年依法行政工作总结
2015/04/29 职场文书
医院消毒隔离制度
2015/08/05 职场文书