PHP编程:若何用PHP把RDF内容拔出Web站点当中(6)...
怎么培养啊 别光说不练啊,好 ,比如新人入门自己步是配置环境,虽然现在都有很多的集成环境,但是真实的体验下配置环境还是会有很多帮助,不论是你以后工作还是在真实的linux下开发。echo "<li><a href=" . $item["link"] . ">" .
$item["title"] . "</a>",
}
}
?>
</ul>
每次你从头装入下面的剧本,响应的RDF文件就会被从特定的地位上取来,经由剖析以后,按请求的格局显示出来。
假如你站点具有高的会见量,你便可能感觉咱们的辛劳有意义之极,特别是当所用的RDF数据更新地没有那末快时,情形更糟。 在这类情形下,也许探求一下在当地缓存RDF数据才是较明智的做法:要末扩大下面的例子法式,在个中到场缓存功效;要末每阁几个小时都花很长的工夫下载一个最新RDF文件的当地正本到你的Web办事器上,然后利用这个当地正本,而不是谁人“活”的(the “live” one)。
8)收费午饭(A Free Lunch)
下面我所写的谁人类也是很根基的,是拿来讲明成绩的,也许也能够用于低会见量的站点。假如你想寻觅一些更专业的器材,去网上吧,那边有很多的开放源码的RDF剖析器,他们带有各类附加的功效(包含缓存)。 那末就让咱们看一些若何应用这些剖析器的例子吧。
第一个要讲的是由Stefan Saasen 为fase4网站开辟的RDF剖析器类,可以从http://www.fase4.com/rdf/上收费下载。这是一个功效十分完全的RDF剖析器,撑持缓存和经由过程代办署理认证。上面是若何利用它的例子:
<html>
<head>
<style type="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>
</head>
<body>
<?
// include class
include("rdf.class.php"),
// instantiate object
$rdf = new fase4_rdf,
// set number of items to display
$rdf->set_max_item(5),
// set RDF engine options
$rdf->use_dynamic_display(true),
$rdf->set_Options( array("image"=>"hidden", "textinput"=>"hidden") ),
// parse and display data
$rdf->parse_RDF("http://www.freshmeat.net/backend/fm-releases.rdf"),
$rdf->finish(),
?>
</body>
</html>
另外一个要引见的是由Jason Williams开辟的PHP RDF剖析器,可以在http://www.nerdzine.net/php_rdf/下载。这是一个未经任何任何衬着的PHP类,完成了一些根基的办法。然而它包括的大批的属性,可让你用来布置经由处置的数据,直到你写意为止。
<html>
<head>
<basefont face="Verdana">
</head>
<body link="Red" vlink="Red" alink="Red">
<?
include("rdf_class.php"),
// this needs to be a local file
$f = new rdfFile("./fm-releases.rdf"),
$f->parse(True),
$f->ReturnTable(True, "black", "white", "100%"),
?>
</body>
</html>
关于这些类的文档在他们各自的网站上都有引见。
9)增添一点款式(Adding A Little Style)
万一你厌恶遍历那些PHP数组并把他们用HTML标志出来的体例,那末你也能够选择经由过程利用XSLT款式单来格局化和显示这些数据。PHP4 .1可以经由过程新的XSLT API来撑持Sablotron XSLT处置器,新的API可以用来兼并一个XSLT款式单和一个XML文档(在这里,即RDF文件),从而十分轻易的把XML标志转化为阅读器可读的HTML标志。
我不想在这下面讲的太细,你可以看一下PHP 手册,或存眷一下本文前面的链接以取得加倍具体的信息。不外我仍是会给出一个复杂的例子来讲明这个成绩。起首,给出款式单文件:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rss="http://purl.org/rss/1.0/"
xmlns:dc="http://purl.org/dc/elements/1.1/" version="1.0">
<!-- main page -->
<xsl:template match="/rdf:RDF">
<html>
<head>
<basefont face="Arial" size="2"/>
</head>
<body>
<xsl:apply-templates select="rss:channel" />
<ul>
<xsl:apply-templates select="rss:item" />
</ul>
</body>
</html>
</xsl:template>
<!-- channel -->
<xsl:template match="rss:channel">
<b>
<a>
<xsl:attribute name="href"><xsl:value-of select="rss:link"
/></xsl:attribute>
<xsl:value-of select="rss:title" />
</a>
</b>
</xsl:template>
<!-- item -->
<xsl:template match="rss:item">
<li />
<a>
<xsl:attribute name="href"><xsl:value-of select="rss:link"
/></xsl:attribute>
<xsl:value-of select="rss:title" />
</a>
<br />
<xsl:value-of select="rss:description" />
</xsl:template>
</xsl:stylesheet>
上面是PHP剧本,用来把下面的款式单和讲的“鲜肉”RDF文档兼并起来,生成一个HTML页面:
<?php
// XML file
// this needs to be a local file
$xml = "fm-releases.rdf",
// XSLT file
$xslt = "fm.xsl",
// create a new XSLT processor
$xp = xslt_create(),
// transform the XML file as per the XSLT stylesheet
// return the result to $result
$result = xslt_process($xp, $xml, $xslt),
if ($result)
{
// print it
echo $result,
}
// clean up
xslt_free($xp),
?>
我想这相当复杂,不必再加申明。两个文档兼并在一同,发生了上面的“分解物”:
这是把RDF数据转换成阅读器可读的HTML的另外一种办法,也许复杂一些(虽然并非最幻想的)。不外要注重一点,你需求运转一个内部法式来按期更新你的RDF文件的当地正本,缘由在于PHP XSLT处置器会见远端文件能够有坚苦。
10)家庭功课(Homework)
假如你有乐趣对这些文中谈到的和没谈到的手艺懂得的更多,你可以思索会见上面的链接:
RSS 1.0 标准:
http://www.purl.org/rss/1.0/
RSS 开展史:
http://backend.userland.com/stories/rss091
W3C 网站关于RDF的内容:
http://www.w3.org/RDF/
PHP中关于SAX和DOM编程的会商:http://www.devshed.com/Server_Side/XML/XMLwithPHP
用PHP完成XSLT转换的会商:
http://www.devshed.com/Server_Side/XML/XSLTrans
关于PHP类的会商:
http://www.devshed.com/Server_Side/PHP/BackToClass
PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧。 作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 做为1门年轻的语言,php一直很努力。 要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。 Ps:以上纯属原创,如有雷同,纯属巧合 最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。 php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会) 这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 做为1门年轻的语言,php一直很努力。 在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、 如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了, 兴趣是最好的老师,百度是最好的词典。 基础有没有对学习php没有太大区别,关键是兴趣。 写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
页:
[1]