热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHPRSS类的使用方法及在4G中主要使用的技术:如何在PHP中使用RSS技术

摘要:RSS是一种常见的Web2.0应用,在PHP中比较常用的RSS解析器为MagpieRSS。该文主要探讨了RSS的语法规则,MAGPI

摘要:RSS是一种常见的Web 2.0应用,在PHP中比较常用的RSS解析器为MagpieRSS。该文主要探讨了RSS的语法规则,MAG PIERSS解析机制、解析过程等方面的内容。

关键词:PHP;RSS;MAGPIERSS;WEB 2.0

中图分类号:TP393文献标识码:A文章编号:1009-3044201221-5072-02

RSS(简易信息聚合,也叫聚合内容)是一种描述和同步网站内容的格式,简单地说就是用于在网站间分享信息。RSS目前广泛用于网上新闻频道、blog及wiki等。使用RSS订阅能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新。网络用户可以在客户端借助于支持RSS的聚合工具软件,在不打开网站内容页面的情况下阅读支持RSS输出的网站内容。[1]

<b> 1 RSS语法</b>

RSS文档使用一种简单的自我描述的语法,下面的代码段 example.xml 构成了一个简单的RSS文档:

<xml version="1.0" encoding="ISO-8859-1" >

<rss version="2.0">

<channel>

<title>Home Page</title>

<link>

<description>A University Located IN Yunnan Province</description>

<item>

<title>The Institute of Physics </title>

<link>https:// /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> -定义到达频道的超链接。(比如

<description> -描述此频道(A University Located In Yunnan Province)

每个<channel>元素可拥有一个或多个<item>元素。每个<item>元素可定义RSS feed中的一篇文章或"story"。<item>元素拥有三个必需的子元素:

<title> -定义项目的标题。(比如The Institute of Physics)

<link> -定义到达项目的超链接。(比如https:// /rss)<description> -描述此项目(比如New RSS FROM BSNC)

<b> 2如何在PHP中使用RSS</b>

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

简单易用:通过几行简单的代码就能够获取和解析RSS提要,并转换为网络用户容易阅读的格式。

高度的兼容性:Magpie支持各种RSS版本中的几乎所有标签集合以及开发人员自己定义的标签,只要格式正确,Magpie就能成功解析。

带宽占用率低:默认认情况下,Magpie将提要内容缓存为60分钟(当然我们可以根据实际需要修改此值,以适合各种提要的缓存首选项。[2]

2.1安装Magpie

与大多数PHP类一样,Magpie的安装非常简单,只需将相关的文件放在PHP脚本能够引用的目录中,安装步骤如下:

1)从

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语句输出:

<php

require"magpie/rss_fetch.inc";

$url="";

$rss=fetch_rss$url;

print_r$rss;

>

2.3如何显示RSS提要

我们可以通过以下Javascript代码显示RSS提要,用下段代码实现调用。

var STORE_KEY_FeedURL = "gf_FeedURL";



推荐阅读
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • 本文介绍了Composer依赖管理的重要性及使用方法。对于现代语言而言,包管理器是标配,而Composer作为PHP的包管理器,解决了PEAR的问题,并且使用简单,方便提交自己的包。文章还提到了使用Composer能够避免各种include的问题,避免命名空间冲突,并且能够方便地安装升级扩展包。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 本文介绍了在iOS开发中使用UITextField实现字符限制的方法,包括利用代理方法和使用BNTextField-Limit库的实现策略。通过这些方法,开发者可以方便地限制UITextField的字符个数和输入规则。 ... [详细]
author-avatar
清清果冻儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有