技术开发 频道

关于PHP的前途

4.快速进阶

    用PHP的面向对象机制实现一个项目的步骤如下:

·首先,你需要连接一个数据库SQL服务器——有下面两个选择:
ADODB (Active Data Objects Data Base),即动态数据对象数据库(http://php.weblogs.com/adodb

Metabase(Database independent access and management),即数据库独立访问和管理(

http://phpclasses.upperdesign.com/browse.htm/package/20

·第二,你需要一些通用的PHP类来创建表单、表格和其它HTML对象。这些都可以从PHP classes网站上获取(http://phpclasses.upperdesign.com)。可以参考一下该网站的下载排行榜。也可以从网站http://www.milkywaygalaxy.freeservers.com/上获取表单类、模板类等。

·第三,通过对这些通用类的继承,来设计和创建自己的PHP类。

·第四,使用模板类来分离显示样式和业务逻辑,可参见http://www.phpclasses.com

·第五,使用IDE工具进行开发(参见PHP IDE一节)。

·最后,最好把你代码封装成类,这样可以实现代码的易维护性和可重用性。

5.PHP的主要特性

·支持标准CGI,FastCGI和Apache模块——作为一个标准的CGI程序,PHP可以安装在运行任何Web服务器的任何UNIX机器上。 PHP支持新的FastCGI标准,通过这一机制,PHP获得了速度上的提高。 当配置成Apache模块时,PHP便成了功能极为强大的,运行速度如闪电般快的新的选择。

·访问日志——通过PHP的日志访问功能,用户可以维护他们的点击次数和日志。 该功能提供了实时的访问监测,而不以任何方式使用系统的中心访问日志文件。日志浏览脚本为个人用户拥有的一组页面提供快速的访问摘要。除此之外,该程序包还可以通过配置为每一个页面生成一个页脚(footer)来显示访问信息。可参考文章后面的例子。

·访问控制——个内建的基于Web的配置“筛”,可实现对访问控制的配置。这样,才有可能为所有或部分Web页面创建一套规则,使得拥有这些页面的特定的人可以对他的网页设置各种限制,如,什么人可以访问这些页面以及这些页面以怎样的一种方式被访问。对页面的设置有许多方式,如密码保护、完全限制、登录失效、或者更多的以客户的域、浏览器、e-mail地址甚至涉及的其它文档为设置依据。

·支持PostgresSQL——PostgresSQL是一个先进但是免费的RDBMS(关系数据库管理系统)。PHP支持在.html文件中直接嵌入PostgresSQL的“SQL 查询语句”。

·支持RFC-1867文件上传——文件上传是Netscape2.0新增的一项功能。用户可以将文件上传到Web服务器。

PHP提供了实际的MIME解码功能,使得文件上传成为可能。PHP还提供额外的框架,可对收到的上传文件进行一些有用的处理。

·基于HTTP的身份验证控制——PHP可以用来为Apache服务器创建自定义的基于HTTP的身份验证机制。

·变量、数组,联合数组(associative arrays)——PHP支持typed(这个单词不知道怎么译,望高手指点)变量,数组,甚至Perl风格的联合数组。而这些都可以通过GET或POST方法的表单从一个页面传递到另一个页面。

·条件语句、While循环——PHP是一种类似C语言的功能完整的脚本语言。你可以使用if/then/elseif/else/endif条件语句,以及While循环和Switch/case语句来安排HTML页面显示的逻辑流程。

·扩展的正规表达式——正规表达式频繁地应用于模式匹配、模式替换以及一般的字符串操作。PHP支持所有常用的正规表达式操作。

·原始的HTTP Header控制——根据某种条件,让Web页面能够发送自定义的原始HTTP头对一些高级的网站设计来说是非常必要的。一个常见的用法就是发送一个Location:URL头,把客户端的请求重定向到另外一个URL上。也可以用来关闭缓存或操作页面最新更新的HTTP头。

·动态创建GIF图片——PHP已经支持Thomas Boutell的GD图片库,可以实现GIF图片的动态创建。

·支持ISP“安全模式”——PHP支持独特的“安全模式”,从而使得多个用户运行同一台服务器上的PHP脚本变得更加安全。

·新发布的PHP中又增加了许多新的功能。可访问PHP的主站点http://www.php.net
·PHP是免费的!——这是最后一个重要特色。PHP的程序包是完全免费的。它遵守GNU/GPL。你可以把这个软件用于实现商业或者其它任何目的。
0
相关文章