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 相关文章推荐
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
Apr 07 PHP
php处理json时中文问题的解决方法
Apr 12 PHP
php 批量替换程序的具体实现代码
Oct 04 PHP
php获得用户ip地址的比较不错的方法
Feb 08 PHP
ThinkPHP CURD方法之limit方法详解
Jun 18 PHP
PHP中strlen()和mb_strlen()的区别浅析
Jun 19 PHP
php实现将任意进制数转换成10进制的方法
Apr 17 PHP
PHP实现根据银行卡号判断银行
Apr 29 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
Oct 29 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
php数据结构之顺序链表与链式线性表示例
Jan 22 PHP
php+redis消息队列实现抢购功能
Feb 08 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
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
2010/04/02 PHP
理解php Hash函数,增强密码安全
2011/02/25 PHP
php根据用户名和手机号查询是否存在手机号码
2017/02/16 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
2017/06/17 PHP
通过javascript设置css属性的代码
2009/12/28 Javascript
工作中常用到的JS表单验证代码(包括例子)
2010/11/11 Javascript
div浮层,滚动条移动,位置保持不变的4种方法汇总
2013/12/11 Javascript
页面按钮禁用与解除禁用的方法
2014/02/19 Javascript
一个实用的图片切换支持点击切换和自动轮播
2014/09/09 Javascript
NodeJS中利用Promise来封装异步函数
2015/02/25 NodeJs
javascript异步处理工作机制详解
2015/04/13 Javascript
判断访客终端类型集锦
2015/06/05 Javascript
JS动态创建DOM元素的方法
2015/06/09 Javascript
深入探究使JavaScript动画流畅的一些方法
2015/06/30 Javascript
详解javascript函数的参数
2015/11/10 Javascript
基于Bootstrap的标签页组件及bootstrap-tab使用说明
2017/07/25 Javascript
BootStrap 标题设置跨行无效的解决方法
2017/10/25 Javascript
使用vue中的v-for遍历二维数组的方法
2018/03/07 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
[02:17]TI4西雅图DOTA2前线报道 啸天mik夫妻档解说
2014/07/08 DOTA
flask框架实现连接sqlite3数据库的方法分析
2018/07/16 Python
解决Python print输出不换行没空格的问题
2018/11/14 Python
Python计算IV值的示例讲解
2020/02/28 Python
Python猴子补丁Monkey Patch用法实例解析
2020/03/23 Python
解决Python中报错TypeError: must be str, not bytes问题
2020/04/07 Python
python一些性能分析的技巧
2020/08/30 Python
金牌葡萄酒俱乐部:Gold Medal Wine Club
2017/11/02 全球购物
英国复古皮包品牌:Beara Beara
2018/07/18 全球购物
美国最佳在线航班预订网站:LookupFare
2019/03/26 全球购物
毕业生动漫设计求职信
2013/10/11 职场文书
商场总经理岗位职责
2014/02/03 职场文书
消防先进事迹材料
2014/02/10 职场文书
商品陈列协议书
2014/09/29 职场文书
教师批评与自我批评发言稿
2014/10/15 职场文书
首都博物馆观后感
2015/06/05 职场文书
黄河绝恋观后感
2015/06/08 职场文书