成为PHP编程高手应该遵循的三个准则

上传人:飞*** 文档编号:5507041 上传时间:2017-09-06 格式:DOCX 页数:12 大小:30.46KB
返回 下载 相关 举报
成为PHP编程高手应该遵循的三个准则_第1页
第1页 / 共12页
成为PHP编程高手应该遵循的三个准则_第2页
第2页 / 共12页
成为PHP编程高手应该遵循的三个准则_第3页
第3页 / 共12页
成为PHP编程高手应该遵循的三个准则_第4页
第4页 / 共12页
成为PHP编程高手应该遵循的三个准则_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《成为PHP编程高手应该遵循的三个准则》由会员分享,可在线阅读,更多相关《成为PHP编程高手应该遵循的三个准则(12页珍藏版)》请在金锄头文库上搜索。

1、成为 PHP 编程高手应该遵循的三个准则PHP 是一门高效的网络编程语言,由于它具有编写灵活、运行快速等优点,迅速成为Web 程序员的首选语言。前不久的一份权威调查表明,现在已经有 31.6的网站使用 PHP作为主要的服务器端编程语言。但是,要成为一名 PHP 编程高手却并不容易。并不像很多人想象的那样,只要能够飞快地编写几条简单的代码去解决一个复杂的问题就是 PHP 编程高手了,真正的 PHP 高手还需要考虑更多的其它问题。以下三条准则是一名成熟的 PHP 程序员在编程中应该首先遵循的准则。 1.懒惰是金 2.编写漂亮的代码 3.追求程序的速度,而不是编程的速度 一、懒惰是金做一个懒惰的程序

2、员吗?这个想法太奇怪了!因为这个世界上最忙碌的人可能就是计算机程序员了。但正是因为程序员太忙了,所以才应该在编程时学会偷懒。 对于一个程序员来说,懒惰的方法有两种:其一,大胆使用现成的别人的程序代码,把这些代码融入到你自己的程序或者项目中去。其二是编写一些有用的代码建立一个函数库,在将来编写程序时可以顺手拈来,省去了许多重复的劳动,自然就可以懒惰一点了。这两种偷懒的方法都非常适合 PHP 程序员了。首先,PHP 是在自由开放的环境中诞生和成长的一门语言。在世界各地,有成千上万的程序员,他们一直在为 PHP 的完美而不断奋斗,他们也愿意和别人分享自己的聪明才智和自己编写的代码。你每天都可以从一些

3、 PHP 网站、邮件列表、新闻组发现大量的优秀的程序代码。这样说,我并不是鼓励你整天等着让别人为你编写代码,但是你可以“站在伟人的肩膀上” ,充分发扬 “拿来主义”,聪明地应用别人的程序代码可以节省你大量时间。其次,在PHP 中,你可以方便地建立自己的函数库,这样可以在你以后编写程序时省去很多麻烦。 下面笔者为大家介绍几个通用的函数,这些函数有的来自网上的一些开放源代码的项目,有的精选自邮件列表。如果你能把它们加入到你自己的函数库中,迟早你将会发现自己受益无穷。 1.通用数据库处理函数 和其它的 CGI 函数相比,PHP 的优点之一是具有很强大的数据库处理能力。但是,在PHP 中,对于不同的数

4、据库都使用一些特定的函数来专门处理,缺少通用的数据库处理函数。这大大降低了程序代码的可移植性,这也为初学编程的朋友带来了很多不便。 在网上,许多程序员都通过封装类解决了这个问题。他们编写了统一的函数用来处理任何流行的数据库 不管是在 Linux 世界深受欢迎的 Mysql 还是在 Windows 平台上广泛流行的 SqlServer。就笔者个人来说,非常喜欢使用这些函数,因为可以直接使用一些简单的诸如query、next_record 之类的函数,而不需要考虑数据库的连接、数据库句柄这些复杂的东西,更不需要考虑使用的是何种数据库。2.变量调试函数 PHP 程序的调试一直是一件让人头疼的事,它既

5、不像 VB 等高级语言那样有集成的编译调试环境,也不想 Perl 那样可以在 Linux 或者 DOS 环境下直接运行。其实,我们完全可以通过灵活地使用 echo 语句来完成对 PHP 的调试工作。 下面的几个函数可以让你随时查看程序中任何变量的类型及其值。 以下为引用的内容:function ss_array_as_string ( array, column = 0) str = Array( n; while(list(var, val) = each( array) for (i = 0; i ; str .= ss_as_string(val, column1). n; for (i

6、 = 0; i classname) return object; else str = objectclassname.( n; while (list(,var) = each(objectpersistent_slots) for (i = 0; i ; str .= ss_as_string(var, column1). n; for (i = 0; i 0, ERROR = 1, INFO = 2, DEBUG = 3); function ss_log_set_level (level = ERROR) global ss_log_level; ss_log_level = lev

7、el; function ss_log (level, message) global ss_log_level, sslogfilename; if ( ss_log_levelsss_log_level connect(); ss_timing_start(); this Query_ID = mysql_query(Query_String,thisLink_ID); ss_timing_stop(); ss_log(INFO, ss_timing_current(). Secs .Query_String); this Row = 0; this Errno = mysql_errno

8、(); this Error = mysql_error(); if ( halt_on_error !this Query_ID) this halt(Invalid SQL: .Query_String); return thisQuery_ID; 二、编写漂亮的代码 1.将后台程序与前端程序分开 在编写 PHP 程序时,有些代码是用来处理一些事务,例如操作数据库、进行数学运算等,而另外的一些代码则只是事务处理的结果显示出来,例如一些使用 echo 语句将结果以 HTML 的格式显示在 Web 浏览器上的 PHP 代码以及那些直接嵌入 PHP 程序的 HTML代码。首先我们应该清晰地区分这

9、两种代码,把前者称为后台程序,把后者称为前端程序。因为 PHP 是一种嵌入式编程语言,也就是说,所有的 PHP 代码都可以嵌入到 HTML代码之中,这为程序的编写带来了许多便利之处。但是,“ 物极必反” ,如果在一段较长的程序中将 PHP 代码和 HTML 代码混合编写,这将使程序杂乱无章,不利于程序的维护和阅读。所以我们需要尽可能地将这些程序中混杂于 HTML 代码中的 PHP 代码移植出来,在专门的文件中将这些代码封装成函数,然后在 HTML 代码中使用 include 语句来包含这些文件,在适当的位置调用这些函数即可。 这种做法一方面使 HTML 代码和 PHP 代码都简单易读,另一方面

10、因为 HTML 代码需要不断更新,而这种分离的方法可以确保后台程序不会被破坏。 同前端程序不同,后台程序更多追求的是稳定、结构化,极少更改,所以应该认真地设计和管理。其实,在设计台程序时,投入大量时间是值得的,“现在栽树,以后乘凉” ,在以后的设计工作中将可以轻松地使用现在编写的后台程序。 2.灵活使用包含文件 正如前面所说的那样,后台程序应当安排在一系列的包含文件中。包含文件可以通过include 语句在需要时动态装入,也可以在 php.ini 文件中通过使用 auto_prepend_file 指令预先自动装入。如果使用后一种方法的话,虽然取得了一劳永逸的好处,但是也有一些缺点值得我们注意

11、。下面的一段代码向我们展示了解析一个庞大的包含文件需要一定的时间: 以下为引用的内容:require(timing.inc); ss_timing_start(); include(test.inc); ss_timing_stop(); echo .ss_timing_current(). ; ? 在上面的代码中,test.inc 是一个 1000 行的包含文件,运行的结果显示,解析这个包含文件花费了 0.6 秒钟,对于一个大型网站来说,这个速度并不是可以忽略不记的。 使用包含文件的另外一个缺点是:如果一个文件中的一个语句发生错误,将会使整个网站的 PHP 程序都无法运行。所以使用起来也及其

12、小心。 其实,对包含文件稍做处理,即可以使包含文件只在需要时进行解析。下面的代码使abc.inc 文件只在程序需要时才作解析: 以下为引用的内容:if ( defined( _LIBA_INC) ) return; define( _LIBA_INC, 1 ); / 代码. / ? 3.使用面向对象的编程方法 PHP 也是一种面向对象的语言,面向对象的编程方法是优秀的程序员们非常推崇的一种软件设计方法,在 PHP 编程中可以充分发挥面向对象语言的优势,对编程中的对象进行封装。在前面的代码中,我们使用了面向对象的方法,例如在管理数据库时,我们将query()函数封装进数据库类中,这极大地方便了代

13、码的管理,增加了程序的可读性。 三、追求程序速度,而不是编程的速度 在网站建设中,程序运行速度和网页下载速度都是关系成败的重要因素。作为一名Web 程序员,应该更加注意代码的运行速度。下面介绍的几种方法都在不同程度上提高了代码的运行速度。 1.使用内嵌的 HTML 代码,而不是 PHP 的 echo 语句。 因为 PHP 是一门嵌入式 Web 编程语言,可以将 HTML 代码和 PHP 代码相互嵌入。但是很多程序员担心在 HTML 代码中过多的使用嵌入 PHP 代码会多次调用 PHP 解释器,从而降低了 PHP 代码的运行速度,所以宁愿使用 PHP 的 echo 语句来输出 HTML 代码,而

14、不直接使用 HTML 代码。但事实却恰恰相反。每一个 PHP 页面只调用一次 PHP 解释器来解释所有的 PHP 代码,所以,只在需要时才嵌入 PHP 代码,而大多数的时候直接使用 HTML代码输入结果,不但不会降低程序的运行速度,而且因为减少了对 echo 语句的解析,往往可以提高代码的运行速度。下面的一段代码证明了我们的结论。在这段代码中,我们使用了前面介绍的时间测试函数。 使用 strreplace 而不是 eregreplace 习惯使用 Perl 进行编程的程序员更加愿意使用 ereg_replace 完成字符串替换工作,因为在 PHP 中 ereg_replace 的用法和 Per

15、l 中模式匹配的用法相近。但是,下面的这段代码证明,使用 str_replace 代替 ereg_replace 将可以大大提高代码的运行速度。 以下为引用的内容:测试 str_replace 和 ereg_replace 的运行速度 /这段代码测试 str_replace 的运行速度 emphasis; ? for (i=0; i, b, string). ; ? /这段代码测试 ereg_replace 的运行速度 for (i=0; i, , string). ; ? /打印结果 结论 使用 str_replace 的时间 使用 ereg_pattern 的时间 运行上面的代码,得到的结果是: 使用 str_replace 的时间 0.089757 使用 ereg_pattern 的时间 0.248881 从运行的结果我们可以看出使用 str_replace 替代 ereg_replace 作为字符串替换函数,极大地提高了代码的运行速度。 3.注意字符串的引用 PHP 和其它很多编程语言一样,可以使用双引号( )来引用字符串,也可以使用单引号()。但是在 PHP 中,如果使用双引号来引用字符串,那么 PHP 解析器将首先分析字符串中有没有对变量的引用,有变量的话,将对变量进行替换。如果是单引号,则没有如此复杂 直接将

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 研究报告 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号