快速业务通道

PHP几点精华

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
了,在6个月之内来的一个新人,那个孤独受惊吓的探险者通过整个工程的源代码目录树,阅读说明文件,源文件的标头说明等等做为地图,他应该有能力穿越整个工程。

6. 其他

· 采用面向对象的设计方法;

理由

毫无疑问这是最接近人们自然思维的方法,可能前期会觉得没有直接书写来得快,能否试着保留自己的看法?好戏在后头!

· 类的定义采用一个文件一个类,并且类名和文件名相同;

理由

o 越来越多的人接受了这种做法

o 事实证明这种方法使得项目的逻辑结构更清晰

· 类定义文件中,定义体之外不得出现诸如echo、print等输出语句;

理由

出现这样的语句,应该当做出现bug来看。

· 输出网页的页面不出现SQL语句

理由

这是n层结构的编程思想所致,每层的任务不同,虽然可以越权行使,可能这样很快捷,但我们不赞成这么干。

· 进行SQL执行的数据必须进行有效**检测

特殊符号:

对于MS SQL Server,’%_[ ] 这些符号都是在书写SQL语句中的特殊含义字符,在SQL执行前需要对这些字符进行处理。

脚本符号:

对于PHP脚本标记,如<??><%%><?php?><script lang<script language="php"></script>,在进入数据库前需要检测处理。

理由

这是数据库编程的一个约定,很多参考书上也是这么说,这里需要强调一下。

· 在HTML网页中尽量不要穿插PHP代码

循环代码和纯粹变量输出(类似于<?=$UserName?>)除外。

理由

o 需要说明的是我们工作的上游,页面设计者的工作,假如在页面中穿插代码,将破坏结构,这应当是我们需要避免的。

o 在这里的PHP代码只负责显示,多余的代码显然是不应该的。

· 没有含义的数字

一个在源代码中使用了的赤裸裸的数字是不可思议的数字,因为包括作者,在三个月内,没人它的含义。例如:

if (22 == $foo) { start_thermo_nuclear_war(); }

else if (19 == $foo) { refund_lotso_money(); }

else if (16 == $foo) { infinite_loop(); }

else { cry_cause_im_lost(); }

在上例中22和19的含义是什么呢?如果一个数字改变了,或者这些数字只是简单的错误,你会怎么想?

使用不可思议的数字是该程序员是业余运动员的重要标志.

你应该用define()来给你想表示某样东西的数值一个真正的名字,而不是采用赤裸裸的数字,例如:

define("PRESIDENT_WENT_CRAZY", "22");

define("WE_GOOFED", "19");

define("THEY_DIDNT_PAY", "16");

if (PRESIDENT_WENT_CRAZY == $foo) { start_thermo_nuclear_war(); }

else if (WE_GOOFED == $foo) { refund_lotso_money(); }

else if (THEY_DIDNT_PAY == $foo) { infinite_loop(); }

else { happy_days_i_know_why_im_here(); }

现在不是变得更好了么?

7. PHP文件扩展名

常见的PHP文件的扩展名有:html, .php, .php3, .php4, .phtml, .inc, .class...

这里我们约定:

· 所有浏览者可见页面使用.html

· 所有类、函数库文件使用.php

理由

· 扩展名描述的是那种数据是用户将会收到的。PHP是解释为HTML的。

8. PHP代码标记

统一使用<?php ?>,只输出变量时<?=$username?>

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号