PHP解析RSS的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP解析RSS的方法。分享给大家供大家参考。具体如下:

1. php代码如下:    

复制代码 代码如下:
<?php
require "XML/RSS.php";
$rss = new XML_RSS("http://php.net/news.rss");
$rss->parse();
foreach($rss->getItems() as $item) {
  print_r($item);
}
?>

2. RSS.php代码如下:
复制代码 代码如下:
<?php
$database =  "nameofthedatabase";
$dbconnect = mysql_pconnect(localhost, dbuser, dbpassword);
mysql_select_db($database, $dbconnect);
$query = "select link, headline, description from `headlines` limit 15";
$result = mysql_query($query, $dbconnect);
while ($line = mysql_fetch_assoc($result))
{
    $return[] = $line;
}
$now = date("D, d M Y H:i:s T");
$output = "<?xml version=\"1.0\"?>
    <rss version=\"2.0\">
 <channel>
     <title>Our Demo RSS</title>
     <link>http://www.tracypeterson.com/RSS/RSS.php</link>
     <description>A Test RSS</description>
     <language>en-us</language>
     <pubDate>$now</pubDate>
     <lastBuildDate>$now</lastBuildDate>
     <docs>http://someurl.com</docs>
     <managingEditor>you@youremail.com</managingEditor>
     <webMaster>you@youremail.com</webMaster>
    ";
foreach ($return as $line)
{
    $output .= "<item><title>".htmlentities($line['headline'])."</title>
                    <link>".htmlentities($line['link'])."</link>
<description>".htmlentities(strip_tags($line['description']))."</description>
                </item>";
}
$output .= "</channel></rss>";
header("Content-Type: application/rss+xml");
echo $output;
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP中的str_repeat函数在JavaScript中的实现

PHP中有一个函数:String str_repeat($str, num);挺好用的....以下通过js和php模拟实现。 1:PHP版本 复制代码 代码如下: /*PHP版实现*/...

php获取后台Job管理的实现代码

复制代码 代码如下: <?php defined('SYSPATH') OR die('No direct access allowed.'); class Controller_...

解析smarty 截取字符串函数 truncate的用法介绍

smarty truncate 截取字符串从字符串开始处截取某长度的字符,默认的长度为80指定第二个参数作为截取字符串的长度默认情况下,smarty会截取到一个词的末尾,如果需要精确到截...

一个PHP的QRcode类与大家分享

一个PHP的QRcode类与大家分享

类的代码: 复制代码 代码如下: define('QR_MODE_NUL', -1); define('QR_MODE_NUM', 0); define('QR_MODE_AN', 1)...

简单谈谈php中ob_flush和flush的区别

ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑… 其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情...