PHP比ASP优秀的七个理由 |
PHP是一门高效的网络编程语言,由于它 存在编写灵便、运行 快捷等 长处,迅速成为Web程序员的首选语言 。前不久的一份权威 考查表明,现在已经有31.6%的网站 使用PHP作为重要的服务器端编程语言 。 然而,要成为一名PHP编程高手却并不容易 。并不像众多人 设想的那样, 惟独 可以飞快地编写几条 容易的代码去解决一个复杂的问题便是PHP编程高手了,真正的PHP高手还需求考量更多的其它问题 。以下三条准则是一名成熟的PHP程序员在编程中应该首先遵照的准则 。 1. 懈怠是金 2.编写美丽的代码 3. 谋求程序的速度,而不是编程的速度 一、 懈怠是金 做一个 懈怠的程序员吗?这个想法太奇怪了!由于这个世界上最 繁忙的人可能便是计算机程序员了 。但正是由于程序员太忙了,所以才应该在编程时学会偷懒 。 关于一个程序员来说, 懈怠的 步骤有两种:其一,大胆 使用现成的别人的程序代码,把这些代码融入到你自己的程序或者 名目中去 。其二是编写一些有用的代码 构建一个函数库,在 将来编写程序时 可以 顺手拈来,省去了许多 反复的劳动,自然就 可以 懈怠丝毫了 。 这两种偷懒的 步骤都十分 合适PHP程序员了 。 首先,PHP是在 自由开放的环境中诞生和成长的一门语言 。在世界各地,有成千上万的程序员,他们向来在为PHP的 圆满而不停奋斗,他们也情愿和别人分享自己的聪慧才智和自己编写的代码 。你天天都 可以从一些PHP网站、邮件列表、新闻组发现大量的优异的程序代码 。这样说,我并不是鼓舞你 终日等着让别人为你编写代码,然而你 可以“站在 巨人的肩膀上”, 充足 弘扬“拿来主义”,聪慧地 利用别人的程序代码 可以 节俭你大量 工夫 。其次,在PHP中,你 可以容易地 构建自己的函数库,这样 可以在你以后编写程序时省去众多麻烦 。 下面小编为大家介绍几个通用的函数,这些函数有的来自网上的一些开放源代码的 名目,有的精选自邮件列表 。假如你能把它们加入到你自己的函数库中,迟早你将会发现自己受益无穷 。 1.通用数据库 解决函数 和其它的CGI函数相比,PHP的 长处之一是 存在很 壮大的数据库 解决 威力 。然而,在PHP中,关于不同的数据库都 使用一些特定的函数来专门 解决, 缺乏通用的数据库 解决函数 。这大大减低了程序代码的可移植性,这也为初学编程的朋友带来了众多不便 。 在网上,许多程序员都通过封装类解决了这个问题 。他们编写了统一的函数用来 解决任何 风行的数据库—— 无论是在Linux世界深受 欢送的Mysql还是在 Windows平台上 宽泛 风行的SqlServer 。就小编个人来说,十分喜爱 使用这些函数,由于 可以直接 使用一些 容易的诸如"query"、 "next_record"之类的函数,而不需求考量数据库的衔接、数据库句柄这些复杂的东西,更不需求考量 使用的是何种数据库 。 假如你需求这些函数,你 可以通过 拜访以下的几个网址而得到: http://phplib.netuse.de/ http://phpclasses.UpperDesign.com/browse.html/package/20 http://phpdb.linuxbox.com/ 2.变量调试函数 PHP程序的调试向来是一件让人头疼的事,它既不像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 < $column+1; $i++){ $str .= "&nbsp;&nbsp;&nbsp;&nbsp;"; } $str .= $var. ==> ; $str .= ss_as_string($val, $column+1)." n"; } for ($i = 0; $i < $column; $i++){ $str .= "&nbsp;&nbsp;&nbsp;&nbsp;"; } return $str.); } function ss_object_as_string (&$object, $column = 0) { if (empty($object->classname)) { return "$object"; } else { $str = $object->classname."( n"; while (list(,$var) = each($object->persistent_slots)) { for ($i = 0; $i < $column; $i++){ $str .= "&nbsp;&nbsp;&nbsp;&nbsp;"; } global $$var; $str .= $var. ==> ; $str .= ss_as_string($$var, column+1)." n"; } for ($i = 0; $i < $column; $i++){ $str .= "&nbsp;&nbsp;&nbsp;&nbsp;"; } return $str.); } } function ss_as_string (&$thing, $column = 0) { if (is_object($thing)) { return ss_object_as_string($thing, $column); } elseif (is_array($thing)) { return ss_array_as_string($thing, $column); } elseif (is_double($thing)) { return "Double(".$thing.")"; } elseif (is_long($thing)) { return "Long(".$thing.")"; } elseif (is_string($thing)) { return "String(".$thing.")"; } else { return "Unknown(".$thing.")"; } } 需求的时候,在程序中 容易地加入下面的一条代码即可查看程序中的所 使用的变量(包含数组和对象)的类型和值: echo ss_as_string($my_variable); 使用下面的语句,我们 可以直接查看程序中全部的变量的值: echo ss_as_string($GLOBALS); |