通过XSLT将RSS种子转换为XHTML(精简)
时间:2006-08-07 来源:manbuzhe0301
RSS XSL:将RSS种子转换为浏览器可以识别的格式,即XHTML。
转换工作可以在浏览器端完成。
也可以在服务器端完成,此时可以借助PHP5的XSL扩展来完成此任务。
后面附有在服务器端转换的简易代码。
<?xml version="1.0" encoding="utf8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<head>
<title><xsl:value-of select="/rss/channel/title"/><xsl:text>=>Powered by: walkman</xsl:text></title>
</head>
<body>
<div align="center"><h3>
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="rss/channel/link"/>
</xsl:attribute>
<xsl:value-of select="rss/channel/description"/>
</xsl:element>
<xsl:text>[</xsl:text>
<xsl:value-of select="rss/channel/language"/>
<xsl:text>]</xsl:text>
</h3></div>
<ul>
<xsl:for-each select="rss/channel/item" >
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="link"/>
</xsl:attribute>
<li><xsl:value-of select="title"/></li>
</xsl:element>
<i>
<xsl:text>发布时间:</xsl:text>
<xsl:value-of select="pubDate"/>
</i><br/>
<xsl:value-of select="description"/><p/>
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
PHP工作代码:
<?php
// Load the XML source
$xml = new DOMDocument;
$xml->load('http://rss.sina.com.cn/news/marquee/ddt.xml');
$xsl = new DOMDocument;
$xsl->load('rss2html.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
echo $proc->transformToXML($xml);
echo "<hr width=80% /><div align='center'> © <b>walkman</b></div>";
?>
转换工作可以在浏览器端完成。
也可以在服务器端完成,此时可以借助PHP5的XSL扩展来完成此任务。
后面附有在服务器端转换的简易代码。
<?xml version="1.0" encoding="utf8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<head>
<title><xsl:value-of select="/rss/channel/title"/><xsl:text>=>Powered by: walkman</xsl:text></title>
</head>
<body>
<div align="center"><h3>
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="rss/channel/link"/>
</xsl:attribute>
<xsl:value-of select="rss/channel/description"/>
</xsl:element>
<xsl:text>[</xsl:text>
<xsl:value-of select="rss/channel/language"/>
<xsl:text>]</xsl:text>
</h3></div>
<ul>
<xsl:for-each select="rss/channel/item" >
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="link"/>
</xsl:attribute>
<li><xsl:value-of select="title"/></li>
</xsl:element>
<i>
<xsl:text>发布时间:</xsl:text>
<xsl:value-of select="pubDate"/>
</i><br/>
<xsl:value-of select="description"/><p/>
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
PHP工作代码:
<?php
// Load the XML source
$xml = new DOMDocument;
$xml->load('http://rss.sina.com.cn/news/marquee/ddt.xml');
$xsl = new DOMDocument;
$xsl->load('rss2html.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
echo $proc->transformToXML($xml);
echo "<hr width=80% /><div align='center'> © <b>walkman</b></div>";
?>
相关阅读 更多 +