php语言 百分网手机站

在PHP中使用RSS技术的方法

时间:2020-09-27 11:51:15 php语言 我要投稿

在PHP中使用RSS技术的方法

  RSS(简易信息聚合,也叫聚合内容)是一种描述和同步网站内容的格式,简单地说就是用于在网站间分享信息。下面是百分网小编收集整理的在PHP中使用RSS技术的方法,希望对您有所帮助!

  1 RSS 语法

  RSS (简易信息聚合, 也叫聚合内容) 是一种描述和同步网站内容的格式, 简单地说就是用于在网站间分享信息。RSS 目前广泛 用于网上新闻频道、 及 wiki 等。使用 RSS 订阅能更快地获取信息, blog 网站提供 RSS 输出, 有利于让用户获取网站内容的最新更 新。网络用户可以在客户端借助于支持 RSS 的聚合工具软件, 在不打开网站内容页面的情况下阅读支持 RSS 输出的网站内容。[1] RSS 文档使用一种简单的自我描述的语法, 下面的代码段( example.xml ) 构成了一个简单的 RSS 文档: <?xml version="1.0" encoding="ISO-8859-1" ?> <rss version="2.0"> <channel> <title>Home Page</title> <link>http://www.bsnc.cn</link> <description>A University Located IN Yunnan Province</description> <item> <title>The Institute of Physics </title> <link>http:// www.bsnc.cn /rss</link> <description>New RSS FROM BSNC</description> </item> </channel> </rss> 代码清单中的第一行: XML 声 明, 用 于 定 义 文 档 中 使 用 的 XML 版 本 和 字 符 编 码 。 该 例 子 遵 守 XML 1.0 规 范 , 使 用 并 ISO-8859-1 (Latin-1/West European) 字符集。下一行是标识此文档是一个 RSS 文档的 RSS 声明 (这里是 RSS version 2.0) 。下一行 含有 <channel> 元素, 此元素用于描述 RSS feed。 <channel> 元素有三个必需的子元素: <title> - 定义频道的标题。 (比如 Home Page) <link> - 定义到达频道的超链接。 (比如 http://www.bsnc.cn) <description> - 描述此频道 University Located In Yunnan Province) (A 每个 <channel> 元素可拥有一个或多个 <item> 元素。每个 <item> 元素可定义 RSS feed 中的一篇文章或 "story"。<item> 元素 拥有三个必需的子元素: <title> - 定义项目的标题。 (比如 The Institute of Physics) <link> - 定义到达项目的超链接。 (比如 http:// www.bsnc.cn /rss) <description> - 描述此项目 (比如 New RSS FROM BSNC)

  2 如何在 PHP 中使用 RSS

  在很多 PHP 语言编写的 RSS 工具中, MagpieRSS 是一个很突出的 RSS 解析器。MagpieRSS(简称 Magpie)是由 Kellan Elliott-Mc? Crea 使用 PHP 编写的一个强大的 RSS 解析器。Magpie 为开发人员提供了一种非常简洁实用的方式来获取和显示 RSS 提要, 其主要 特点如下:

  网络通讯及安全

  Computer Knowledge and Technology 电脑知识与技术

  简单易用: 通过几行简单的代码就能够获取和解析 RSS 提要, 并转换为网络用户容易阅读的.格式。 高度的兼容性: Magpie 支持各种 RSS 版本中的几乎所有标签集合以及开发人员自己定义的标签, 只要格式正确, Magpie 就能成 功解析。 带宽占用率低: 默认认情况下, Magpie 将提要内容缓存为 60 分钟 (当然我们可以根据实际需要修改此值, 以适合各种提要的缓 存首选项。[2] 2.1 安装 Magpie 与大多数 PHP 类一样, Magpie 的安装非常简单, 只需将相关的文件放在 PHP 脚本能够引用的目录中, 安装步骤如下: 1) http://magpierss.sourceforge.net/下载 Magpie。 从 2) 将包的内容解压至一个便于从 PHP 脚本包含的位置。 3) 在脚本中包含 Magpie 类 (rss_fetch.inc) : require 'magpie/rssfetch.php') ( ;

  2.2 Magpie 如何解析

  RSS 提供了一种规范化的方式, 基于 XML 格式封装网站内容, 这称为提要 (feed) 。Magpie 解析提要时, 将其放在四个字段(chan? nel、 image、 items 和 textinput)的对象中。其中, channel 是一个关联数组的数组, 其余三个是关联数组。我们可以通过以下 PHP 脚本 获取 example.xml 提要, 使用 print_r()语句输出: 2.3 如何显示 RSS 提要 我们可以通过以下 javascript 代码显示 RSS 提要, 用下段代码实现调用。 var STORE_KEY_FeedURL = "gf_FeedURL"; var STORE_KEY_FeedName = "gf_FeedName"; GF_RSS_URL= "http://answers.yahoo.com/rss/catq?sid=396546051"; GF_RSS_TITLE = "Yahoo! Answers"; function gf_showRssView() { document.getElementById("tickerView").style.display = "none"; widget.setPreferenceForKey(GF_RSS_URL, STORE_KEY_FeedURL); widget.setPreferenceForKey(GF_RSS_TITLE, STORE_KEY_FeedName); init(); } 把这些文件添加到你的工程, 并且将下段代码插入到你的 PHP 主文件中。

  2.4 缓存提要

  3 结论

  默认情况下, magpie 缓存 60 分钟, 这是因为一般的提要不太可能一小时内更新超过 1 次。因此, 即使经常尝试获取相同的提 要, 比如每 5 分钟一次, 也不会出现任何更新, 直到提要缓存达到 60 分钟为止。但有些提要确实会在一小时内发布多次, 或者可能 用来发布更紧急的信息。为了完全禁用缓存, 可以禁用常量 MAGPIE_CACHE_ON, 如下: define ("MAGPIE_CACHE_ON",0) 为修改默认的缓存时间(以秒为单位) 可以修改常量 MAGPIE_CACHE_AGE,如下: , define "MAGPIE_CACHE_AGE",1800) ( 最后, 可以选择在获取失败时显示一个错误, 而不是显示缓存的提要, 这需要启用常量 MAGPIE_CACHE_FLASH_ONLY: define("MAGPIE_CACHE_FLASH_ONLY",1)

  使用 RSS 订阅能帮助网络用户更快地获取信息, 有利于让用户获取网站内容的最新更新。该文对 RSS 的语法及 PHP 环境下的 MagpieRSS 解析器的安装、 解析机制、 解析过程等方面进行了初步的探讨, 希望能够对 PHP 开发人员有一定的帮助。

【在PHP中使用RSS技术的方法】相关文章:

Session在PHP中的使用10-03

PHP中trait的使用方法08-25

PHP中trait的使用方法介绍07-15

使用php伪造referer的方法09-13

在PHP中阻止SQL注入式攻击的方法10-09

Index函数在excel中的使用方法10-15

在PHP语言中使用JSON11-13

WEB中使用PHP连接MySQL的方法08-18

php中的curl使用入门教程08-17

使用PHP发送邮件的两种方法09-23