PHP 用于PHP的OOP RSS / XML类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 用于PHP的OOP RSS / XML类相关的知识,希望对你有一定的参考价值。
<?php
error_reporting(E_ALL);
mysql_connect("localhost","root","root") or die (mysql_error());
mysql_select_db("oop") or die (mysql_error());
class RSS {
var $XMLdump;
var $pagetitle;
var $pagelink;
var $pegedescription;
var $pagelanguage;
var $sqlresult;
function setHead($setPagetitle, $setPagelink, $setPegedescription, $setPagelanguage){
$this->pagetitle = $setPagetitle;
$this->pagelink = $setPagelink;
$this->pegedescription = $setPegedescription;
$this->pagelanguage = $setPagelanguage;
}
function getDataFrom($setSQL){
$this->sqlresult = mysql_query($setSQL);
}
function rssHead(){
$this->XMLdump = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<rss version=\"2.0\" xmlns:atom=\"http://www.w3.org/2005/Atom/\">
<channel>
<title>".$this->pagetitle."</title>
<link>".$this->pagelink."</link>
<description>".$this->pegedescription."</description>
<language>".$this->pagelanguage."</language>
<lastBuildDate>".date("r", time())."</lastBuildDate>\n";
}
function rssItems(){
while($bla = mysql_fetch_assoc($this->sqlresult)){
$this->XMLdump .= " <item>\n";
$this->XMLdump .= " <title>".$bla['title']."</title>\n";
$this->XMLdump .= " <link>http://bestnewssiteever.com/news/".$bla['id']."/</link>\n";
$this->XMLdump .= " <category>".$bla['category']."</category>\n";
$this->XMLdump .= " <pubDate>".date("r",$bla['pubDate'])."</pubDate>\n";
preg_match_all("/^(?:[^.]*\.){3}/", $bla['content'], $trimedContent);
$this->XMLdump .= " <description>".$trimedContent[0][0]."..</description>\n";
$this->XMLdump .= " </item>\n";
}
}
function rssFooter(){
$this->XMLdump .= " </channel>
</rss>";
}
function writeXML(){
$this->rssHead();
$this->rssItems();
$this->rssFooter();
return $this->XMLdump;
}
function saveXML($file){
$fp = fopen($file,"w+");
flock($fp,2);
fwrite($fp,$this->writeXML());
flock($fp,3);
fclose($fp);
}
}
$Bar = new RSS();
$Bar->getDataFrom("SELECT * FROM news ORDER BY pubDate DESC");
$Bar->setHead("TITLE","http://domain.de","DESCRIPTION","en-EN");
$Bar->saveXML("blub.xml");
?>
以上是关于PHP 用于PHP的OOP RSS / XML类的主要内容,如果未能解决你的问题,请参考以下文章
在 PHP 中从 Google RSS 提要 xml 中获取前 9 个元素