如何用PHP把RDF内容插入Web站点之中(五)-经典文章-PHP教程-幽默笑话

来源:本站2019-07-11138 次

如何用PHP把RDF内容插入Web站点之中(五)-经典文章-PHP教程-幽默笑话

文章内容如何用PHP把RDF内容插入Web站点之中(五)修改时间:[2011/05/0314:42]阅读次数:[533]发表者:[起缘]免费午餐(AFreeLunch)上面我所写的那个类也是很基本的,是拿来说明问题的,或许也可以用于低访问量的站点。

如果你想寻找一些更专业的东西,去网上吧,那里有许多的开放源码的RDF分析器,他们带有各种附加的功能(包括缓存)。 那么就让我们看一些如何运用这些分析器的例子吧。

第一个要讲的是由StefanSaasen为fase4网站开发的RDF分析器类,可以从上免费下载。

这是一个功能非常齐全的RDF分析器,支持缓存和通过代理认证。 下面是如何使用它的例子:htmlheadstyletype="text/css"body{font-family:Verdana;font-size:11px;}.fase4_rdf{font-size:13px;font-family:Verdana}.fase4_rdf_title{font-size:13px;font-weight:bolder;}/style/headbody//includeclassinclude("");//instantiateobject$rdf=newfase4_rdf;//setnumberofitemstodisplay$rdf-set_max_item(5);//setRDFengineoptions$rdf-use_dynamic_display(true);$rdf-set_Options(array("image"="hidden","textinput"="hidden"));//parseanddisplaydata$rdf-parse_RDF("");$rdf-finish();/body/html另一个要介绍的是由JasonWilliams开发的PHPRDF分析器,可以在下载。 这是一个未经任何任何渲染的PHP类,实现了一些基本的方法。

但是它包含的大量的属性,可以让你用来安排经过处理的数据,直到你满意为止。

--------------------------------------------------------------------------------htmlheadbasefontface="Verdana"/headbodylink="Red"vlink="Red"alink="Red"include("rdf_");//thisneedstobealocalfile$f=newrdfFile("./");$f-parse(True);$f-ReturnTable(True,"black","white","100%");/body/html关于这些类的文档在他们各自的网站上都有介绍。

增加一点样式(AddingALittleStyle)万一你讨厌遍历那些PHP数组并把他们用HTML标记出来的方式,那么你也可以选择通过使用XSLT样式单来格式化和显示这些数据。

可以通过新的XSLTAPI来支持SablotronXSLT处理器,新的API可以用来合并一个XSLT样式单和一个XML文档(在这里,即RDF文件),从而非常容易的把XML标记转化为浏览器可读的HTML标记。

我不想在这上面讲的太细,你可以看一下PHP手册,或者关注一下本文后面的链接以获得更加详细的信息。 不过我还是会给出一个简单的例子来说明这个问题。

首先,给出样式单文件:xmlversion=""xsl:stylesheetxmlns:xsl=""xmlns:rdf="#"xmlns:rss=""xmlns:dc=""version=""!--mainpage--xsl:templatematch="/rdf:RDF"htmlheadbasefontface="Arial"size="2"//headbodyxsl:apply-templatesselect="rss:channel"/ulxsl:apply-templatesselect="rss:item"//ul/body/html/xsl:template!--channel--xsl:templatematch="rss:channel"baxsl:attributename="href"xsl:value-ofselect="rss:link"//xsl:attributexsl:value-ofselect="rss:title"//a/b/xsl:template!--item--xsl:templatematch="rss:item"li/axsl:attributename="href"xsl:value-ofselect="rss:link"//xsl:attributexsl:value-ofselect="rss:title"//abr/xsl:value-ofselect="rss:description"//xsl:template/xsl:stylesheet下面是PHP脚本,用来把上面的样式单和讲的“鲜肉”RDF文档合并起来,生成一个HTML页面:php//XMLfile//thisneedstobealocalfile$xml="";//XSLTfile$xslt="";//createanewXSLTprocessor$xp=xslt_create();//transformtheXMLfileaspertheXSLTstylesheet//returntheresultto$result$result=xslt_process($xp,$xml,$xslt);if($result){//printitecho$result;}//cleanupxslt_free($xp);我想这相当简单,无须再加说明。 两个文档合并在一起,产生了下面的“合成物”:这是把RDF数据转换成浏览器可读的HTML的另一种方法,或许简单一些(尽管并不是最理想的)。 不过要注意一点,你需要运行一个外部程序来定期更新你的RDF文件的本地副本,原因在于PHPXSLT处理器访问远端文件可能有困难。 家庭作业(Homework)如果你有兴趣对这些文中谈到的和没谈到的技术了解的更多,你可以考虑访问下面的链接:规范:RSS发展史:W3C网站关于RDF的内容:PHP中关于SAX和DOM编程的讨论:用PHP实现XSLT转换的讨论:关于PHP类的讨论:XML基础的讨论:XSLT基础的讨论:PHP手册中关于SAX函数的内容:PHP手册中关于XSLT函数的内容:下次再见了……保重身体呀!注意:本文中的所有例子都在Linux/i386,,,环境下通过检验。

这些例子仅用于说明问题,不是为了某一个产品。 Melonfire网站不对文中的源代码提供任何授权或支持。 (本文版权为Melonfire网站所有,原文出处:)。

  • A+
所属分类:儿童文学