在互连网络高速发展的今天,web的后台开发已日益成为开发的焦点;激烈地商业竞争,也促使人们对web后台程序有了更高的要求。本文将向您介绍一种新型的cgi程序编写语言php3,它简单易学,拥有众多的优秀特性,可让您方便快捷地编写出功能强大,运行速度快,并可同时运行于windows,unix,linux平台的web后台程序,特别值得一提的是,任何人在遵守gnu条约的情况下,均可免费使用并更改其源码!
现有web后台程序,决大多数采用下列几种技术编写:perl,c通用cgi语言直接编写(译)cgi程序或利用web服务器自带的api(如isapi,nsapi)或采用第三方解决方案(如asp,coldfushion),虽说每类方案都有各自的强项,但均不是理想的解决之道。
perl编写cgi是使用最多的方法,在网络上也有很多现成的脚本可以拿来修改使用,但它却存在公认的性能问题:由于web服务器运行时需调用解释程序解析代码,当站点的访问人数激增时,web服务器的性能也必将直线下降,另外则是它的数据库连接功能非常弱,某些情况下甚至还会降低数据库的存取速度;c编译cgi和isapi,nsapi技术在速度上提升很大,一段时期被多数大型网站采用,但由于其本质原因(编写复杂,数据库功能弱及api只能用于特定web服务器等)一直未能大规模的使用;在此两者的基础上,第三方厂商提出了较好的解决方案:如microsoft的active server pages,allaire的coldfusion,它们都具有运行速度快,数据库操作功能强大等特性,受到了许多开发者的欢迎,但它们只能单纯的运行于个别平台(nt),对要求更高回应率的网站来说(大多数大中型网站均建于unix或linux平台,apache系列web服务器)还是不能顺利采用(注:目前已有人提出这两种技术在unix系列平台上应用的方案,但要么是不具备源技术的全部优秀功能,要么就是只能应用于个别unix平台)。
1997年,php开发小组在原php/fi 2.0的基础上,开发出了全新的php3,并将其置于gnu的条约之下(和linux相同),免费让所有人使用和(或)更改解释器源代码。相对于传统的cgi语言,php3拥有下列超群的特性:
一. 易学易用:php3的语法结构大部分借用了c,java,perl的好的语法框架,有以上编程经验的开发人员可快速的掌握投入实际使用。在php3的程序包中,有极其详尽的安装说明,任何人都可按照说明快速的配置好自己的web服务器,甚至可以在php3的站点上直接下载已经配置好php3模块的web服务器。
让我们列出几段php3代码:
1. function defaulthandler ($parser,$data)
{
if (substr($data,0,1)= = "&" && substr($data,-1,1)= = ";"
{printf ('<font color="#aa00aa">%s</font>',htmlspecialchars ($data));
}else
{printf ('<font size="-1">%s</font>',htmlspecialchars($data));
}}
1. class foo {
function do_foo () {
echo "doing foo .";
}}
$bar=new foo;
$bar->do_foo ();
1. function test () {
static $count=0;
$count++;
echo $count;}
怎么样?看起来是不是很眼熟?
二. 运行速度快:php3采用html内置标记技术(类似当前流行的asp,后缀为php3),解释程序本身作为web服务器的一个模块运行,相当大的提高了运行时的解析速度(目前只支持apache webserver的模块方式,按照php开发小组的计划,以后将可把解释程序作为web服务器的一个plug-in来运行),从页面表单提交的数据自动成为程序中同表单名的变量,而无需手工赋值。经测试表明,在web站点访问量非常大时,php3的解析速度相当于传统cgi程序的4倍!非常适合大中型站点的应用。
三. 跨多个平台:目前php3可在windows,unix,linux的web服务器上正常运行,支持iis,apache等通用web服务器,用户更换平台时,无需变换php3代码,可即拿即用。
四. 极其强大的数据库支持:php3直接为很多数据库提供原本的连接,包括oracle,sybase,postgres,mysql,informix,dbase,solid,access等(通过sybase-ct驱动,更可高速的访问microsoft sql server-------两者协议是兼容的)完全支持odbc接口,这样的话,凡是支持odbc接口的数据库,php3都可提供有力的支持。而且这些数据库的操作都是php3内部包括的,无需其它附件介入,实际应用中,可得到比任何后台技术都要快的数据库访问性能。
五. 先进的扩展功能:php3不但内置了对文件上传,密码认证,cookies操作,邮件收发,动态gif生成等功能的支持,还极有远见的提供了对gzip文件,pdf,xml的直接支持,用户还可以编写自己的扩展模块(或从网上下载别人编写的其它模块,基库)给将来的扩展提供了极大的空间。
六. 完全免费,支持:php3是遵守gnu条约的,任何人均可按条约免费使用并进行源码改写,使用者还可通过php3的站点,邮件列表等方式获得支持,这里要提一下的是:网络上已专门开设了php3的支持站点,代码交换站点,相当多的支持者们也开发出了许多强大的基库,让人们随意调用(在php3的权威站点上,有php3的详尽使用手册,faq等资料下载)
由于php3的众多优秀功能,国外愈来愈多的站点已开始使用它来进行后台的开发(截止99年4月已有60万个站点使用开发)。国内一些有识之士也开始尝试使用,获得了非常好的效果,我们有理由相信,如此优秀的cgi语言,必将会大规模的扩散开去,成为我们开发有力的工具。
附:php3的一些网络资源:
1. www.php.net
php开发小组的站点,上面对php3的方方面面有详尽的介绍,并可下载php3的执行
文件,源码,使用手册,faq等。
2. px.sklar.com
专门用于进行php3代码交换的站点,上面按分类列出了大量php3的源码,内容极
丰富,有些不用修改就可直接应用。
3. www.phpbuilder.com
php3开发支持站,开发中的疑难解决,技巧,进展,邮件列表订阅,都可在此找
到。
4. php.codebase.org/content/default/index.html
非常棒的资源站,不但有大量的源码,技巧,还设有几个论坛讨论,一定要去看
!
5. phplib.shonline.de/
一个功能强大的php3基库,在php3的开发中使用最广。
6. php.netvision.net.il/examples/
有大量php3的代码示例
8. www.magicw3.com.cn
国内较早采用php3的服务商,上面有一些php3的资料。
9. www.job.net.cn
中文站点,后台程序全部用php3写成。
另外,在各大搜索引擎上用php关键字查找,也会得到不少关于php3的资料和站点
新闻热点
疑难解答