php制作基于xml的RSS订阅源功能示例
发布:smiling 来源: PHP粉丝网 添加日期:2018-07-31 12:54:49 浏览: 评论:0
首先制作一个 RSS 模板,模板的文件名是 feed.xml,代码如下:
- <?xmlversionxmlversion="1.0"encoding="utf-8"?>
- <rssversionrssversion="2.0"xmlns:wfw="http://wellformedweb.org/CommentAPI/"></rss>
再就是用php文件从数据库读取数据并生成 RSS 文件,这里用一个数组模拟从数据库读取的数据:
- <?php
- classRss{
- protected$dom= null;
- protected$temp='./feed.xml';
- protected$rss= null;
- protected$title='';
- protected$desc='';
- protected$link='';
- publicfunction__construct(){
- $this->title ='物理学';
- $this->desc ='现代物理学';
- $this->link ='http://mysql/rss.php';
- $this->dom =newDOMDocument('1.0','utf-8');
- $this->dom->load($this->temp);
- $this->rss =$this->dom->getElementsByTagName('rss')->item(0);
- }
- publicfunctionfeed($arr){
- $this->createChannel();
- $channel=$this->dom->getElementsByTagName('channel')->item(0);
- foreach($arras$v){
- $channel->appendChild($this->createItem($v));
- }
- header('content-type:text/xml');
- echo$this->dom->savexml();
- }
- protectedfunctioncreateChannel(){
- $channel=$this->dom->createElement('channel');
- $channel->appendChild($this->createEle('title',$this->title));
- $channel->appendChild($this->createEle('link',$this->link));
- $channel->appendChild($this->createEle('description',$this->desc));
- $this->rss->appendChild($channel);
- }
- protectedfunctioncreateItem($arr){
- $item=$this->dom->createElement('item');
- foreach($arras$k=>$v){
- $item->appendChild($this->createEle($k,$v));
- }
- return$item;
- }
- protectedfunctioncreateEle($name,$value){
- $e=$this->dom->createElement($name);
- $t=$this->dom->createTextNode($value);
- $e->appendChild($t);
- return$e;
- }
- }
- $arr=array(
- array(
- 'title'=>'牛顿力学',
- 'link'=>'1',
- 'description'=>'牛顿力学'
- ),
- array(
- 'title'=>'相对论',
- 'link'=>'1',
- 'description'=>'爱因斯坦的相对论'
- )
- );
- $rss=newRss;
- $rss->feed($arr);
- ?>
Tags: 示例 功能
相关文章
- ·php使用ajax示例(2013-12-09)
- ·PHP自动捕捉页面500错误示例(2014-01-19)
- ·PHP验证码实现代码简单示例(2014-08-22)
- ·php验证码程序代码(2014-08-22)
- ·一个完整php验证码实例程序(2014-08-25)
- ·PHP计算身份证校验码示例(2018-05-31)
- ·php利用云片网实现短信验证码功能的示例代码(2018-06-06)
- ·PHP基于双向链表与排序操作实现的会员排名功能示例(2018-06-06)
- ·原生JS实现Ajax通过GET方式与PHP进行交互操作示例(2018-06-11)
- ·php获取客户端IP及URL的方法示例(2018-07-26)
- ·php基于dom实现的图书xml格式数据示例(2018-07-26)
- ·PHP实现多级分类生成树的方法示例(2018-07-31)
- ·PHP基于DOM创建xml文档的方法示例(2018-07-31)
- ·PHP使用DOM和simplexml读取xml文档的方法示例(2018-07-31)
- ·php实现文件与16进制相互转换的方法示例(2018-08-02)
- ·yii2简单使用less代替css示例(2018-08-06)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)