PHP代码编写规范

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

QC 质量管理体系文件

代码编写规范

受控状态:■受控□非受控

发布日期:2006年02月20日

实施日期:2006年02月24日

1. 引言

1.1. 目的

制定本规范是为了能达到以下目的:

●提高程序员工作效率和代码的利用性

●程序员可以了解任何代码,弄清程序的状况

●新人可以很快的适应环境

●防止新接触php的人出于节省时间的需要,自创一套风格并养成终生的习惯

●防止新接触php的人一次次的犯同样的错误

●在一致的环境下,人们可以减少犯错的机会

1.2. 适用范围

适用于本公司的所有开发人员,包括数据库、网页及应用程序开发人员,及有关的程序测试人员。

1.3. 引用标准

GB/T 8566-1995 信息技术软件生存期过程

GB/T 8567-1988 计算机软件产品开发文件编写指南

1.4. 术语

GB/T 11457-1995中所使用的术语适用于本规范。

2. 代码编写规则

2.1. 注释

(1)编写代码期间注释要求占程序总量15%以上。

(2)每个模块顶部必须说明模块名称、功能描述、作者等。

(3)每个过程、函数、方法等开头部分必须说明功能、参数、返回值、原数据和目标数据数据结构等等。

(4)变量定义的行末应当对变量给出注释。

(5)程序在实现关键算法的地方应当给出注释

2.2. 变量、函数、过程、控件等命名规则

(1)变量命名采用[作用范围][数据类型][自定义名称]规则定义,要求看到变量名就能直观的看出其范围和数据类型。

(2)函数、过程、方法、事件等命名应尽量做到观其名知其义。

(3)控件的命名采用[控件类型][自定义名]规则定义,要求通过名字能直观看出控件类型。

(4)自定义命名空间规则,要求能顾名思义

2.3. 源代码规则

风格约定:采用缩进的格式保存程序的层次结构。要求能直观的看出循环、判断等层次结构。

2.4. 用户界面规范

(1)用户界面布局和结构应当合理。

(2)颜色搭配方面应当咨询美术专业人员。

(3)界面中必须有产品标识,如果在用户许可情况下可加入公司标识。

2.5. 合理性原则

(1)提示说明应当简短且避免产生歧义。

(2)提示或警告信息应当具有向导性,能准确告诉用户错误原因及恢复方法。提示和警告对话框应当使用标准规范。

(3)快捷键的定义必须符合用户操作习惯

(4)程序需要长时间处理或等待时,应当显示进度条并提示用户等待。

(5)一些敏感操作,如删除等操作在执行前必须提示用户确认。

3. 命名规则

一般原则:命名要与其自然想适合,根据名字能推导出其含义,一般人的推想也能在意料之中。3.1. 目录和文件的命名

原则:通过名称就能理解目录或文件的意义。

规则:

(1)目录命名使用英文小写字母,长度不超过20个字符;

(2)文件命名用小写的英文字母、数字和下划线的组合;

(3)文件名称使用“性质_描述”的规则,描述可以有多个单词,用”_”隔开,性质一般是该页面得概要。如register_form.php;

(4)凡是类文件使用“模块名_controller.php”的形式,如admin_controller.php。

3.2. 类(class)命名

原则:通过类名就能想起这个类是什么。

规则:

(1)词的首字母大写,其它字母一概小写;

(2)多个词组成的混合名,使用大写字母作为词的分隔,其它字母小写,用以真正传送信息;

(3)不要使用下划线“_”;

(4)缩写词不要全部使用大写字母。如使用GetHtmlStatistic,而不用GetHTMLStatistic;

(5)派生类的命名与父类无关,只与自身有关。

3.3. 函数和方法命名

原则:通常每个函数和方法都是执行一个动作,所以其命名要清楚地说明

它们是做什么的。

规则:

(1)采用“动作_动作对象”或者简单的就直接使用“动作”的形式.

(2)例子形式1:get_table_name()

形式2:add()

3.4. 类属性命名

规则:

(1)所有字母都使用小写;

(2)使用“_”作为每个词的分界;

(3)例如:$associations

$many_to_many_sql

3.5. 方法中参数命名

规则:

采用和类属性命名相同的命名规则;

3.6. 变量命名

规则:

(1)所有字母都使用小写;

(2)使用“_”作为每个词的分界;

(3)如$error,$time_of_error;

(4)临时变量的取名应加上前缀tmp,如tmp_user_ame;

(5)对象变量的取名应加上前缀obj_作为前缀,如:obj_user;

(6)数组变量的取名应加上前缀arr,如arr_book_name;

(7)数组下标的变量类型可以是整型和字符串型两种;

1.若为整形,数组下标不要用双引号包含;

2.若为字符串型,必须用双引号包含。

3.7. 其它

(1)用变量和函数返回引用时,引用必须带‘r’前缀

(2)全局变量应该带前缀“g”

(3)定义命名/全局常量时, 全局常量所有字母大写,用“_”分隔每个单词,如:define (“A_GLOBAL_CONSTANT” , ”hello world”)

(4)静态变量应该带前缀“s”,如:static $sStatus = 0;

相关文档
最新文档