Class name: RSS

/**<br>
&nbsp;*&nbsp; Class name: RSS<br>
&nbsp;*&nbsp; Author&nbsp;&nbsp;&nbsp; : LeadStar Team<br>
&nbsp;*&nbsp; website&nbsp;&nbsp; : <a href=”http://www.leadstar.com.cn/”><font color=”#2771B3″>http://www.leadstar.com.cn/</font></a><br>
&nbsp;*&nbsp; CopyRight : LeadStar Team<br>
&nbsp;*/<br>
if (defined(‘_CLASS_RSS_PHP’)) return;<br>
define(‘_CLASS_RSS_PHP’,1);</p>
<p>class RSS {<br>
&nbsp;&nbsp; //public<br>
&nbsp;&nbsp; var $rss_ver = “2.0”;<br>
&nbsp;&nbsp; var $channel_title = ”;<br>
&nbsp;&nbsp; var $channel_link = ”;<br>
&nbsp;&nbsp; var $channel_description = ”;<br>
&nbsp;&nbsp; var $language = ‘zh_CN’;<br>
&nbsp;&nbsp; var $copyright = ”;<br>
&nbsp;&nbsp; var $webMaster = ”;<br>
&nbsp;&nbsp; var $pubDate = ”;<br>
&nbsp;&nbsp; var $lastBuildDate = ”;<br>
&nbsp;&nbsp; var $generator = ‘RedFox RSS Generator’;</p>
<p>&nbsp;&nbsp; var $content = ”;<br>
&nbsp;&nbsp; var $items = array();</p>
<p>&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; // 函数名: RSS<br>
&nbsp;&nbsp; // 功能: 构造函数<br>
&nbsp;&nbsp; // 参数: $title<br>
&nbsp;&nbsp; // $link<br>
&nbsp;&nbsp; // $description<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; function RSS($title, $link, $description) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;channel_title = $title;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;channel_link = $link;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;channel_description = $description;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;pubDate = Date(‘Y-m-d H:i:s’,time());<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;lastBuildDate = Date(‘Y-m-d H:i:s’,time());<br>
&nbsp;&nbsp; }<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; // 函数名: AddItem<br>
&nbsp;&nbsp; // 功能: 添加一个节点<br>
&nbsp;&nbsp; // 参数: $title<br>
&nbsp;&nbsp; // $link<br>
&nbsp;&nbsp; // $description&nbsp; $pubDate<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; function AddItem($title, $link, $description ,$pubDate) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;items[] = array(‘title’ =&gt; $title ,<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ‘link’ =&gt; $link,<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ‘description’ =&gt; $description,<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ‘pubDate’ =&gt; $pubDate);<br>
&nbsp;&nbsp; }<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; // 函数名: BuildRSS<br>
&nbsp;&nbsp; // 功能: 生成rss xml文件内容<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; function BuildRSS() {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s = “&lt;?xml version=’1.0′ encoding=’utf-8′?&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; n&lt;rss version=”2.0″&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // start channel<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;channel&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;title&gt;&lt;![CDATA[{$this-&gt;channel_title}]]&gt;&lt;/title&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;link&gt;&lt;![CDATA[{$this-&gt;channel_link}]]&gt;&lt;/link&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;description&gt;&lt;![CDATA[{$this-&gt;channel_description}]]&gt;&lt;/description&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;language&gt;{$this-&gt;language}&lt;/language&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($this-&gt;copyright)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;copyright&gt;&lt;![CDATA[{$this-&gt;copyright}]]&gt;&lt;/copyright&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($this-&gt;webMaster)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;webMaster&gt;&lt;![CDATA[{$this-&gt;webMaster}]]&gt;&lt;/webMaster&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($this-&gt;pubDate)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;pubDate&gt;{$this-&gt;pubDate}&lt;/pubDate&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($this-&gt;lastBuildDate)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;lastBuildDate&gt;{$this-&gt;lastBuildDate}&lt;/lastBuildDate&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($this-&gt;generator)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;generator&gt;{$this-&gt;generator}&lt;/generator&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // start items<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for ($i=0;$i&lt;count($this-&gt;items);$i++) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;item&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;title&gt;&lt;![CDATA[{$this-&gt;items[$i][‘title’]}]]&gt;&lt;/title&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;link&gt;&lt;![CDATA[{$this-&gt;items[$i][‘link’]}]]&gt;&lt;/link&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;description&gt;&lt;![CDATA[{$this-&gt;items[$i][‘description’]}]]&gt;&lt;/description&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;pubDate&gt;{$this-&gt;items[$i][‘pubDate’]}&lt;/pubDate&gt;n”;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;/item&gt;n”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // close channel<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $s .= “&lt;/channel&gt;n&lt;/rss&gt;”;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;content = $s;<br>
&nbsp;&nbsp; }<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; // 函数名: Show<br>
&nbsp;&nbsp; // 功能: 将产生的rss内容直接打印输出<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; function Show() {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (empty($this-&gt;content)) $this-&gt;BuildRSS();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo($this-&gt;content);<br>
&nbsp;&nbsp; }<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; // 函数名: SaveToFile<br>
&nbsp;&nbsp; // 功能: 将产生的rss内容保存到文件<br>
&nbsp;&nbsp; // 参数: $fname 要保存的文件名<br>
&nbsp;&nbsp; /**************************************************************************/<br>
&nbsp;&nbsp; function SaveToFile($fname) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $handle = fopen($fname, ‘wb’);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($handle === false)&nbsp; return false;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fwrite($handle, $this-&gt;content);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fclose($handle);<br>
&nbsp;&nbsp; }<br>
}<br>
?&gt;</p>
<p>feed.php代码:</p>
<p>&lt;?php<br>
&nbsp;&nbsp;&nbsp; require_once(‘RSS.php’);<br>
&nbsp;&nbsp;&nbsp; require_once(‘conn/connect.inc’);<br>
&nbsp;&nbsp;&nbsp; function changUTF($con){<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $con = iconv(“gb2312″,”utf-8”,$con);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return&nbsp; $con;<br>
&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; $myRss = new RSS(“购房者杂志网”,”<a href=”http://zazhi.goufang.xn--com”><font color=”#2771B3″>http://zazhi.goufang.com”,”购房者杂志网”);</font></a><br>
&nbsp;&nbsp;&nbsp; //$myRss-&gt;RSS();<br>
&nbsp;&nbsp;&nbsp; $sql = “select ID,m_name,m_num,m_class,m_intro,m_time from m_property”;<br>
&nbsp;&nbsp;&nbsp; $result = mysql_query($sql, $connection);<br>
&nbsp;&nbsp;&nbsp; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $sql1 = “select tag_con from m_tag where m_id=”.$row[‘ID’];<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result1 = mysql_query($sql1,$connection);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ($row1 = mysql_fetch_array($result1, MYSQL_ASSOC)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $tag = $tag.” “.$row[‘tag_con’];<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $myRss-&gt;AddItem(changUTF($row[‘m_name’].$row[‘m_num’]),'<a href=”http://zazhi.goufang.com/html/'”><font color=”#2771B3″>http://zazhi.goufang.com/html/'</font></a>.$row[‘ID’].’.html’,changUTF($row1[‘$tag’].$row[‘m_intro’]),$row[‘m_time’]);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; $myRss-&gt;BuildRSS();<br>
&nbsp;&nbsp;&nbsp; $myRss-&gt;SaveToFile(‘feed.rss’);<br>
?&gt;

发表评论