zoukankan      html  css  js  c++  java
  • Rss 订阅:php动态生成xml格式的rss文件

    Rss 简介:         

        简易信息聚合(也 叫聚合内容)是一种描述和同步网站内容的格式。使用RSS订阅能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新。网络用户可以在客户端借助于支持RSS的聚合工具软件,在不打开网站内容页面的情况下阅读支持RSS输出的网站内容。

        Rss是用xml文件写的。

    Rss 文件格式规范:

    <?xml version="1.0" encoding="utf-8"?>  
    <rss version="2.0">
    <channel>
        <title>媒体名称/定义网站频道名称</title>
        <description>媒体名称/定义网站频道介绍</description>
        <link>网站频道地址</link>
        <generator>生成RSS所用的程序</generator>
        <image>
            <url>LOGO图片地址(绝对地址)</url>
            <title>图片替代文字</title>
            <link>网站首页地址</link> // 网站首页地址
        </image>

        <item>
            <title><![CDATA[ 文章标题 ]]></title>
            <link>文章URL地址(绝对地址)</link>
            <description><![CDATA[ 摘要/全文 ]]></description>

            <source>来源名称</source>

            <pubDate>Mon, 07 Jul 2014 13:42:28 +0800</pubDate> // 最后发布时间
        </item>

    </channel>

    </rss>

    Rss生成:

        Rss是用xml写的,手动写xml太麻烦,可以通过php动态生成。

     

    方法一:  

        php文件按照rss格式生成xml格式的内容,中间的<item>内容通过循环生成,最终把结果直接输出即可。                 

    文件:rssCreate.php

        //xxx.xml 文件头部
        $rss_xml = '<?xml version="1.0" encoding="utf-8"?>
                <rss version="2.0">
                <channel>
                <title>XXXXX</title>
                <description></description>
                <link>http://www.ileehoo.com</link>
                <generator>http://www.ileehoo.com</generator>';

        //查询前100条的文章
        $list_arr = "通过查询数据库,得到文章列表的数组";

        //xxx.xml 文件主体(循环得到)
        foreach( $list_arr as $k => $v ) {
            $rss_xml .= "<item>
                    <title><![CDATA[ XXXXXX ]]></title>";
                    <link>XXXX</link>

                    <source>XXXXX</source>
                    <pubDate>XXXXXX</pubDate>
                    </item>";
        }

        //xxx.xml 文件尾部
        $rss_xml .= '</channel></rss>';
        echo $rss_xml;

    方法二:

        生成xml内容,写入xml文件,如rss.xml

        见:http://blog.sina.com.cn/s/blog_483a76360100fof9.html

    注意:

    1:注意:<?xml version="1.0" encoding="utf-8"?>之前不能有任何输出。

    2:<link>链接中不能出现&符号。

    3:要注意<pubDate>标签的时间格式,如:Mon, 07 Jul 2014 13:42:28 +0800  

        貌似这样也可以:d m Y H:i:s 

    4:方法1直接echo输出,可以通过火狐浏览器测试。如果生成的xml格式正确,可以显示或弹出订阅窗口。

       但是用其他浏览器不能实现这一种效果,不知为什么,可能是不支持吧。

      

    或:

    内容参考:

    http://blog.sina.com.cn/s/blog_483a76360100fof9.html

    http://www.w3school.com.cn/rss/index.asp

    http://www.williamlong.info/archives/824.html

    http://mp.toutiao.com/rss_guideline/

    http://web.toutiao.com/a3354328022/?id=3368086883&tt_from=sina   

    http://web.toutiao.com/media_cooperation/#

  • 相关阅读:
    知足老师对于脚跟酸经验
    《伤寒论》理论的临床应用--朱良春
    大便秘结案
    胃脘不适论治
    杏林集叶效方
    腰痛案(知足老师论辩证之重要性)
    小儿外感治疗误区
    小儿外感咳喘案
    漫谈凭脉用药--何少奇
    咽部不适案
  • 原文地址:https://www.cnblogs.com/wangyuman26/p/6101095.html
Copyright © 2011-2022 走看看