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 相关文章推荐
生成sessionid和随机密码的例子
Oct 09 PHP
使用adodb lite解决问题
Dec 31 PHP
php str_pad 函数用法简介
Jul 11 PHP
PHP最常用的ini函数分析 针对PHP.ini配置文件
Apr 22 PHP
php递归创建目录的方法
Feb 02 PHP
php防止sql注入简单分析
Mar 18 PHP
codeigniter发送邮件并打印调试信息的方法
Mar 21 PHP
PHP利用imagick生成组合缩略图
Feb 19 PHP
ThinkPHP框架搭建及常见问题(XAMPP安装失败、Apache/MySQL启动失败)
Apr 15 PHP
关于PHP中协程和阻塞的一些理解与思考
Aug 11 PHP
thinkPHP5框架auth权限控制类与用法示例
Jun 12 PHP
PHP的PDO大对象(LOBs)
Jan 27 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
现磨咖啡骗局!现磨咖啡=新鲜咖啡?现磨咖啡背后的猫腻你不懂!
2019/03/28 冲泡冲煮
理解和运用PHP中的多态性[译]
2011/08/02 PHP
php中的一些数组排序方法分享
2012/07/20 PHP
PHP面向对象之领域模型+数据映射器实例(分析)
2017/06/21 PHP
tp5(thinkPHP5)框架实现多数据库查询的方法
2019/01/10 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
PHP开发api接口安全验证操作实例详解
2020/03/26 PHP
JavaScipt基本教程之前言
2008/01/16 Javascript
js中top、clientTop、scrollTop、offsetTop的区别 文字详细说明版
2011/01/08 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
jQuery中多个元素的Hover事件解决方案
2014/06/12 Javascript
JavaScript的arguments对象应用示例
2014/09/15 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
jQuery实现表格奇偶行显示不同背景色 就这么简单
2017/03/13 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
AngularJS 中ui-view传参的实例详解
2017/08/25 Javascript
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
axios 处理 302 状态码的解决方法
2018/04/10 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
Vue infinite update loop的问题解决
2019/04/23 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
在Python中使用成员运算符的示例
2015/05/13 Python
Windows下为Python安装Matplotlib模块
2015/11/06 Python
详解Python做一个名片管理系统
2019/03/14 Python
详解Python是如何实现issubclass的
2019/07/24 Python
快速解决jupyter notebook启动需要密码的问题
2020/04/21 Python
python算的上脚本语言吗
2020/06/22 Python
英国花园家具中心:Garden Furniture Centre
2017/08/24 全球购物
WoolOvers澳洲官方网站:英国针织服装公司
2018/05/13 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
单位员工收入证明样本
2014/10/09 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
本溪关门山导游词
2015/02/09 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
Nginx安装完成没有生成sbin目录的解决方法
2021/03/31 Servers