奠定健壮的基础
用 PHP 编写代码与用类似 C 的语言编写代码非常相似。由于它们句法上类似,所以还会导致类似的代码维护问题。当必须开发大型应用程序时,您可能要编写大量代码。随着时间的流逝,这些代码可能变得难以管理,错误很快就会乘虚而入。无论您从哪里听到这种说法,都不要相信 — 至少不能全信。但是,更重要的事实是如果您发现自己维护代码过于频繁,那么首先您的应用程序的设计可能是很糟糕的。
正确地设计代码
您最初做出的选择会影响您以后编写代码时的自由度。这使得正确的设计成为一个重要的先决条件。虽然当您解决一个微不足道的问题时设计会成为一个额外的仪式,但是您至少必须知道就是应该这样做的。许多人把设计和规划看作额外的开销。但是以糟糕的设计开始,或者根本就没有设计,结果总是会造成草率的代码。请记住,再巧妙的编码也不能弥补糟糕的设计。虽然如何设计应用程序超出了这个系列文章的范畴,但我还是会提示一些设计 Web 应用程序时应该牢记的问题。
绝对不要在页面中考虑
如果您对用 PHP 将您的 HTML 页面变得更动态些感兴趣,这部分将适合您。当您想在每个页面上显示日期和时间以使其看上去是最新的时候,通常是这个习惯开始的时候。每个 HTML 页面都变成一个只有有限几行的小 PHP 脚本,日期函数隐藏在某个地方。如果这是您想要的,您必须认可这是使该作业实现的最简单的方式。但是,想象一下您必须做些什么变动才能改变页面上呈现的日期格式。您将不得不更改每个页面内的代码。
减少客户机端要求
Web 页面和应用程序的类型已经向多方向发展了。首先是图像和图像映射,然后是实现很酷的动画的 Java applet 和客户机端脚本。现在是 Flash。有影响是好事情,但是您必须记住 Web 背后的整体思想是使任何需要信息的人都能随时访问这些信息。如果您使用并非所有浏览器和平台都支持的技术,就会拒绝人们访问您的信息。您永远不知道不能访问您 Web 站点的人是否本来可以成为您的下一个客户!
把代码、内容和显示分开
HTML 是显示内容的标记语言,PHP 是嵌入 HTML 的脚本语言。这确实使简单的任务变得容易 — 例如,以日期为例。不过,当您要实现复杂的要求时,将 PHP 嵌入 HTML 使代码的简单性尽失。尽可能地把代码、内容和显示分开,这很好。考虑一下您正在阅读的这个文档。这个文档开始被创建为一个 XML 文件。HTML 和 PDF 版本是用样式表自动生成的。代码(向您显示该页面的应用程序)、内容(XML 文档)和显示(样式表(style sheet))是不同的。
您最好在编程时为代码建立文档。能为您解析所有的脚本并创建看起来整洁的 HTML 格式的文档的工具并不存在。如果您改变了代码的行为,就要相应地改变文档。如果代码的文档并没有实际记录什么东西,那么拥有这样的文档是没用的。
确保您的代码是备有文档的、简单的并且易于理解的。从长远来看这样会有所帮助。
使代码是平台独立的
您必须解决的另一个问题是平台独立性。当然,为 Windows 上的 PHP 编写的脚本将对任何其它平台上的 PHP 起作用:PHP 就是这样设计的。不过,您仍然需要小心比较小的不一致。例如,换行字符在 Windows 和 UNIX 中就以不同的方式表示。
您在访问资源(如位于 PHP 外部的数据库)时还必须使用抽取。比方说您的应用程序用 MySQL 作为数据库服务器来削减成本。如果您决定以后拥有一个功能更丰富的数据库,您必须更改应用程序中的代码。对代码进行重大更改总是一个苦差事而且是一个易出错的过程。请使用抽取来隔离对易于更改的部分的改变。您不必重新编写整个应用程序。