PHP编码规范之注释和文件结构说明


Posted in PHP onJuly 09, 2010

文件结构

|??images
|??include

|??parameter

|??config

|??function
|??index
images存放图片文件,include中是系统是要引用的文件,一般在parameter中存放参数文件,config中存放配置文件,function中存放方法文件,如javascript的方法等,并按功能模块的分类,将各功能的类也放入其中
文件名
文件夹命名一般采用英文,长度一般不超过20个字符,命名采用小写字母。除特殊情况才使用中文拼音,一些常见的文件夹命名如:images(存放图形文件),flash(存放Flash文件),style(存放CSS文件),scripts(存放Javascript脚本),inc(存放include文件),link(存放友情链接),media(存放多媒体文件)等。文件名称统一用小写的英文字母、数字和下划线的组合。
块注释
块注释通常用于提供对文件,方法,数据结构和算法的描述。块注释被置于每个文件的开始处以及每个方法之前。它们也可以被用于其他地方,比如方法内部。在功能和方法内部的块注释应该和它们所描述的代码具有一样的缩进格式。
块注释之首应该有一个空行,用于把块注释和代码分割开来,比如:
/*
 * 这里是块注释
*/
块注释可以以/*-开头,这样indent(1)就可以将之识别为一个代码块的开始,而不会重排它。
/*-
 * 如果想被忽略,可是使用特别格式的块注释
 *
 * one
 *

two
 *

three
 */
注意:如果你不使用indent(1),就不必在代码中使用/*-,或为他人可能对你的代码运行indent(1)作让步。
单行注释
短注释可以显示在一行内,并与其后的代码具有一样的缩进层级。如果一个注释不能在一行内写完,就该采用块注释。单行注释之前应该有一个空行。以下是一个代码中单行注释的例子:
if (condition) {

/* 以下代码运行的条件 */

...
}
尾端注释
极短的注释可以与它们所要描述的代码位于同一行,但是应该有足够的空白来分开代码和注释。若有多个短注释出现于大段代码中,它们应该具有相同的缩进。
以下是一个代码中尾端注释的例子:

if ($a == 2) { 
return TRUE; /* 对单一条件的说明 */ 
} else { 

return isPrime($a); /* 其余的条件 */ 
}

行末注释
注释界定符"//",可以注释掉整行或者一行中的一部分。它一般不用于连续多行的注释文本;然而,它可以用来注释掉连续多行的代码段。以下是所有三种风格的例子:
if ($foo > 1) { 
// 第二种用法. 

... 
} 
else { 

return false; // 说明返回值的原因 
} 
//if ($bar > 1) { 
// 
//  // 第三种用法 
//  ... 
//} 
//else { 

// return false; 
//}

文档注释
文档注释描述php的类、构造器,方法,以及字段(field)。每个文档注释都会被置于注释定界符/**...*/之中,一个注释对应一个类或成员。该注释应位于声明之前:

/**
 * 说明这个类的一些 ...
*/
class Example { ...

注意顶层(top-level)的类是不缩进的,而其成员是缩进的。描述类的文档注释的第一行(/**)不需缩进;随后的文档注释每行都缩进1格(使星号纵向对齐)。成员,包括构造函数在内,其文档注释的第一行缩进4格,随后每行都缩进5格。
若你想给出有关类、变量或方法的信息,而这些信息又不适合写在文档中,则可使用实现块注释(见5.1.1)或紧跟在声明后面的单行注释(见5.1.2)。例如,有关一个类实现的细节,应放入紧跟在类声明后面的实现块注释中,而不是放在文档注释中。
文档注释不能放在一个方法或构造器的定义块中,因为程序会将位于文档注释之后的第一个声明与其相关联。

PHP 相关文章推荐
相对路径转化成绝对路径
Apr 10 PHP
php环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
Oct 17 PHP
PHP COOKIE及时生效的方法介绍
Feb 14 PHP
PHP网络操作函数汇总
May 18 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
WordPress开发中的get_post_custom()函数使用解析
Jan 04 PHP
Symfony2实现在controller中获取url的方法
Mar 18 PHP
ThinkPHP3.2.2实现持久登录(记住我)功能的方法
May 16 PHP
PHP+MySql+jQuery实现的"顶"和"踩"投票功能
May 21 PHP
PHP获取链表中倒数第K个节点的方法
Jan 18 PHP
Django中通过定时任务触发页面静态化的处理方式
Aug 29 PHP
yii2.0框架数据库操作简单示例【添加,修改,删除,查询,打印等】
Apr 13 PHP
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
Jul 09 #PHP
php set_magic_quotes_runtime() 函数过时解决方法
Jul 08 #PHP
PHP 函数学习简单小结
Jul 08 #PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
Jul 04 #PHP
PHP三层结构(上) 简单三层结构
Jul 04 #PHP
Apache 配置详解(最好的APACHE配置教程)
Jul 04 #PHP
PHP中文URL编解码(urlencode()rawurlencode()
Jul 03 #PHP
You might like
如何利用php+mysql保存和输出文件
2006/10/09 PHP
PHP几个数学计算的内部函数学习整理
2011/08/06 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
php不写闭合标签的好处
2014/03/04 PHP
php遍历树的常用方法汇总
2015/06/18 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
2016/01/07 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
PHP 加密 Password Hashing API基础知识点
2020/03/02 PHP
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
用dom+xhtml+css制作的一个相册效果代码打包下载
2008/01/24 Javascript
js+CSS 图片等比缩小并垂直居中实现代码
2008/12/01 Javascript
jQuery基于当前元素进行下一步的遍历
2014/05/20 Javascript
动态加载jQuery的两种方法实例分析
2015/07/17 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
JS实现隔行换色的表格排序
2017/03/27 Javascript
AugularJS从入门到实践(必看篇)
2017/07/10 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
2019/04/01 Javascript
js实现电灯开关效果
2021/01/19 Javascript
详细介绍Python中的偏函数
2015/04/27 Python
Python EOL while scanning string literal问题解决方法
2020/09/18 Python
Python获取系统默认字符编码的方法
2015/06/04 Python
Python操作串口的方法
2015/06/17 Python
Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】
2019/03/11 Python
深入了解python中元类的相关知识
2019/08/29 Python
使用Python实现分别输出每个数组
2019/12/06 Python
英国现代家具和装饰网站:PN Home
2018/08/16 全球购物
荷兰最大的鞋子、服装和运动折扣店:Bristol
2021/01/07 全球购物
财务会计专业求职信范文
2013/12/31 职场文书
工程安全员岗位职责
2014/03/09 职场文书
安全协议书范本
2014/04/21 职场文书
留守儿童工作方案
2014/06/02 职场文书
工业设计专业自荐书
2014/06/05 职场文书
中国梦团日活动总结
2014/07/07 职场文书
工作汇报开头与结尾怎么写
2014/11/08 职场文书
劳动纠纷调解协议书格式
2014/11/30 职场文书