首页 >后端开发 >XML/RSS教程 >利用xml实现rss订阅

利用xml实现rss订阅

怪我咯
怪我咯原创
2017-04-05 17:27:082527浏览

RSS是一种网页内容联合格式,是XML的一种,所有的RSS文档都遵循XML1.0规范。

具体示例:

<span style="font-family:Microsoft YaHei;font-size:18px;"><?xml version = "1.0" encoding = "utf-8" ?>  
<rss version = "2.0" xmlns:wfw ="http://wellformedweb.org/CommentAPI/">  
       <channel>  
              <title>标题</title>  
              <link>链接地址</link>  
              <description>描述</description>  
              <language>描述语言</language>  
              <copyright>版本</copyright>  
              <pubdate>时间</pubdate>  
              <item>  
                     <title>日志标题</title>  
                  <link>日志的url访问地址</link>  
                     <author>日志的作者</author>  
                     <pubdate>日志的发布时间</pubdate>  
                     <description>日志的内容</description>  
              </item>  
       </channel>  
</rss></span>

此时应该链接数据库,输出想要的结果。

Test.PHP

<span style="font-family:Microsoft YaHei;font-size:18px;"><?PHP  
       include("./conn.php");  
       class test{  
              public $title = &#39;&#39;;  
              public $link = &#39;&#39;;  
              public $description= &#39;&#39;;  
              public $items = &#39;&#39;;  
              public $template =&#39;./test.xml&#39;;  
              public $dom = &#39;&#39;;  
              public $rss = &#39;&#39;;  
              public function__construct(){  
                     $this ->dom = new domDocument(&#39;1.0&#39;,&#39;utf-8&#39;);  
                     $this ->dom -> load($this -> template);  
                     $this ->rss = $this -> dom -> GetElementsByTagName(&#39;rss&#39;);  
              }  
              public functioncreateChannel(){  
                     $channel =$this -> dom -> createElement("channel");  
                     $channel-> appendChild($this -> createEle(&#39;title&#39;,$this -> title));  
                     $channel-> appendChild($this -> createEle(&#39;link&#39;,$this -> link));  
                     $channel-> appendChild($this -> createEle(&#39;description&#39;,$this ->description));  
                     $this ->rss -> appendChild($channel);  
                        
              }  
              public functioncreateEle($name,$value){  
                     $element =$this -> dom -> createElement($name);  
                     $text = $this-> dom -> createTextNode($value);  
                     $element-> appendChild($text);  
                     return$element;  
              }  
              protected functionadditem($list){  
                     foreach($listas $goods){  
                            $this-> rss -> appendChild($this-> createitem($goods));  
                     }  
              }  
              public functioncreateitem($arr){  
                     $item = $this-> dom -> createElement("item");  
                     foreach($arras $key => $value){  
                            $item-> appendChild($this -> createEle($key,$value));  
                     }  
                     return $item;  
              }  
                 
              public functiondisplay(){  
                     $this ->createChannel();  
                     $this ->additem($this -> items);  
                     echo $this-> dom -> savexml();  
              }  
       }  
       $sql = "select * fromstu";  
       $rs = mysql_query($sql);  
       while($row =mysql_fetch_assoc($rs)){  
              $list[] = $row;  
       }  
       $test = new test();  
       $test -> title = "测试标题";  
       $test -> link = "测试连接";  
       $test -> description ="测试内容";  
       $test -> display();  
       $test -> items = $list;  
</span>


以上是利用xml实现rss订阅的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn