PHP代码文档规范及phpDoc指南-共享版
php代码规范说明文档
@亲爱的php/计算机语言爱好者,开发者好,希望在这里你能收获到你需要的,祝你工作顺利,生活愉快!@姜祖斌,web爱好者,开发者@喜欢和业界的普一起交流,分享,关注互联网,关注媒体,关注开发,关注产品,关注技术@感兴趣的朋友可以和我一起交流技术的精华@weibo:/yangpage@mail/gtalk:jiangzubin1989@@msn:jiangzubin1989@@qq:757576387@honepage:/@facebook:https:///zubin.jiangphp代码规范说明文档命名规则:采用驼峰标识,尽量做到见名知义PHP编码规范与原则://命名:类,方法,函数,变量,注释:开发中难免留下一些临时代码和调试代码,此类代码必须添加注释,以免日后遗忘。
所有临时性、调试性、试验性的代码,必须添加统一的注释标记“//debug”并后跟完整的注释信息,这样可以方便在程序发布和最终调试前批量检查程序中是否还存在有疑问的代码。
如:$flag = TRUE; //debug 这里不能确定是否需要对$flag进行赋值缩进/空格:使用四个空格为每层次缩进。
对于最大缩进层数,并没有一个固定的规矩,假如缩进层数大于五层的时候,考虑着将代码因数分解。
运算符、小括号、关键词和函数:不要把小括号和关键词紧贴在一起,要用空格隔开它们;不要把小括号和函数名紧贴在一起;除非必要,不要在Return返回语句中使用小括号。
如:if (condition) {}大括号{}、if和switch:首括号与关键词同行,尾括号与关键字同列;if结构中,if和elseif与前后两个圆括号同行,左右各一个空格,所有大括号都单独另起一行。
另外,即便if后只有一行语句,仍然需要加入大括号,以保证结构清晰;总是将恒量放在等号/不等号的左边。
switch结构中,通常当一个case块处理后,将跳过之后的case块处理,因此大多数情况下需要添加break。
PHP文档规范及phpDoc指南-共享版
PHP文档规范及phpDoc指南-共享版1 概述对于一个开发人员,文档总是最感到头疼的事情之一。
而且,很可能你对待文档会采取截然不同的2 种态度:当你使用别人的代码库的时候,最希望得到的是它的技术文档,尤其是当时间很紧,而你又不得不硬着头皮去读那些生涩的代码的时候。
当写你自己的程序的时候,最不希望做的事情却是给它编写专门的技术文档,你会以种种理由给自己开脱:我的代码已经足够清晰了,完全不用再为它重新编写文档了�6�7�6�7 为了解决这个问题,文档工具由此产生。
按照规范格式编写代码注释,当代码写完了,技术文档也就完成了。
良好的代码注释不仅能够帮助开发人员在编写代码时缕清思路,尽可能避免逻辑 bug,而且规范的代码注释还能够使用文档工具直接生成API 手册。
下面是一个规范的代码注释:/** * Common base class of all phpdoc classes (简述,用在索引列表中)* * As a kind of common base class PhpdocObject holds * configuration values (e.g. error handling)and debugging * methods (e.g. introspection()). It does not have a constructor, * so you can always inheritig Phpdoc classes from this * class without any trouble. (详细的功能描述)* * @author Ulf Wendel * @version $Id:PhpdocObject.php,v 1.3 2001/02/18 15:29:29 uw Exp $ * @package PHPDoc (文档标记)*/ class PhpdocObject { ..... }2 PHPDoc/ phpDocumentor 2.1 什么是PHPDoc/phpDocumentor PHPDoc(现在项目名改为了phpDocumentor)是PEAR 下面的一个非常优秀的模块,它的目标是实现类似 javadoc 的功能,可以为你的代码快速生成具有相互参照,索引等功能的API 文档。
PHPWord使用指南By_Stone
PHPWord使用指南(PHPWord Beta 0.6.2)By--Stone 首先我们要了解文档最基本的信息和设置:因为是国外编辑的类库,存在对中文支持的问题,使用前,我们需要进行一些修正:1、解决编码问题,PHPword会对输入的文字进行utf8_encode 编码转化,如果你使用GBK、GB2312或者utf8编码的话就会出现乱码,如果你用utf8编码,就查找类库中所有方法中的utf8_encode转码将其删除,如果你采用GBK或者GB2312编码,使用iconv进行编码转换。
2、解决中文字体支持,在writer/word2007/base.php中312行添加$objWriter->writeAttribute('w:eastAsia',$font)3、启动php zip支持,windows环境下在php配置文件php.ini 中,将extension=php_zip.dll前面的分号“;”去除;(如果没有,请添加extension=php_zip.dll此行并确保php_zip.dll文件存在相应的目录),然后同样在php.ini文件中,将zlib.output_compression = Off改为zlib.output_compression = On;计量单位:缇(twips)首先解释一下PHPWord最基本的计量单位:“缇”(twips),我们常常在文件中看到或使用计量单位“缇”,它是开源办公软件中最基本的计量单位,“缇”是"TWentieth of an Inch Point"的简写,意思 1/20磅,与其他常用剂量单位的换算是1缇=1/1,440英寸,1缇=1/567厘米,1缇=1/15像素新建文档添加页面添加默认页面(默认页面方向和页边距):页面样式创建样式数组:文本添加文本向文档添加文本使用方法函数: addText.(注意PHPword会对输入的文字进行utf8_encode编码转化,如果你使用GBK、GB2312或者utf8编码的话就会出现乱码,如果你用utf8编码,就查找类库中所有方法中的utf8_encode转码将其删除,如果你采用GBK或者GB2312编码,使用iconv进行编码转换。
PHP代码规范
请在条件陈述中使用&&和||,不要使用 and 和 or。
例如:
/* These are all wrong. */ if (($i < 7) and ($j > 8)) ... /* These are all right. */ if (($i < 7) && ($j > 8)) ...
PHP 代码范
一 编辑器设置
1.使用 Tab 缩进,不要使用空格
鉴于很多编辑器在保存文件时会自动清除用于缩进的空格,所以我们一律使 用 Tab 键进行缩进。
2.UNIX 文件格式
请将编辑器设置对所有程序使用 UNIX 格式保存,不要使用 Win32 或者 Mac 的格式。例如,EditPlus 里面 Document->File Format(CR/LF)->Unix 。
例如:
/* These are all wrong. */ if (condition) {
while (condition2) { ...
} } else {
... }
/* These are right. */ if (condition)
{ while (condition2) { ... }
例如:
/* These are all wrong. */ $i=0; /* These are all right. */ $i = 0;
/* These are all wrong. */ if($i<7) ... /* These are all right. */ if ($i < 7) ...
case: 1 ...
default: ...
PHP代码规范
PHP代码规范命名约定1. 类:(1) 使用大写字母作为词的分割,其他的字母均使用小写;(2)名字的首字母使用大写;(3) 不要使用下划线('_');(4) 如:Name、SuperMan、BigClassObject。
2. 函数:(1) 函数名只包含字母数字的字符,数字是允许的但大多数情况下不鼓励;(2) 函数名总是以小写开头,当函数名包含多个单词,在首单词后的所有单词首字母大写,以“驼峰”格式来处理;(3) 函数名应当说明函数的意图和行为。
例子:3. 变量:(1) 变量名只包含字母数字的字符,数字是允许的但大多数情况下不鼓励;(2) 变量名总是以小写开头,当变量名包含多个单词,在首单词后的所有单词首字母大写,以“驼峰”格式来处理;例子:4. 常量:(1)常量包含数字字母字符和下划线,数字允许作为常量名;(2) 常量名的所有字母必须大写;(3) 常量中的单词必须以下划线分隔,例如可以这样 :EMBED_SUPPRESS_EMBED_EXCEPTION字符串变量替换变量替换有下面这些形式:字符串连接字符串必需用 "." 操作符连接,在它的前后加上空格以提高可读性:数组索引不能为负数,建议数组索引从 0 开始。
当用array函数声明有索引的数组,在每个逗号的后面间隔空格以提高可读性:当用声明关联数组,array我们鼓励把代码分成多行,在每个连续行的开头用空格填补来对齐键和值:类的声明花括号应当从类名下一行开始。
每个类必须有一个符合PHPDocumentor标准的文档块。
类中所有代码必需用四个空格的缩进。
例子:类成员变量变量的声明必须在类的顶部,在方法的上方声明。
不允许使用var,要用private、protected或public。
直接访问 public 变量是允许的但不鼓励,最好使用访问器(set/get)。
函数和方法声明在类中的函数必须用private、protected或public声明它们的可见性。
PHP代码规范
PHP代码规范PSR-0命名标准,官⽅已基本废弃PSR-1 基本代码规范本篇规范制定了代码基本元素的相关标准,以确保共享的PHP代码间具有较⾼程度的技术互通性。
关键词 “必须”("MUST")、“⼀定不可/⼀定不能”("MUST NOT")、“需要”("REQUIRED")、“将会”("SHALL")、“不会”("SHALL NOT")、“应该”("SHOULD")、“不该”("SHOULD NOT")、“推荐”("RECOMMENDED")、“可以”("MAY")和”可选“("OPTIONAL")的详细描述可参见 RFC 2119 。
1. 概览PHP代码⽂件必须以PHP代码⽂件必须以不带BOM的 UTF-8 编码;PHP代码中应该只定义类、函数、常量等声明,或其他会产⽣从属效应的操作(如:⽣成⽂件输出以及修改.ini配置⽂件等),⼆者只能选其⼀;命名空间以及类必须符合 PSR 的⾃动加载规范:PSR-0 或 PSR-4 中的⼀个;类的命名必须遵循 StudlyCaps ⼤写开头的驼峰命名规范;类中的常量所有字母都必须⼤写,单词间⽤下划线分隔;⽅法名称必须符合 camelCase 式的⼩写开头驼峰命名规范。
2. ⽂件2.1. PHP标签PHP代码必须使⽤长标签或短输出标签;⼀定不可使⽤其它⾃定义标签。
2.2. 字符编码PHP代码必须且只可使⽤不带BOM的UTF-8编码。
2.3. 从属效应(副作⽤)⼀份PHP⽂件中应该要不就只定义新的声明,如类、函数或常量等不产⽣从属效应的操作,要不就只有会产⽣从属效应的逻辑操作,但不该同时具有两者。
“从属效应”(side effects)⼀词的意思是,仅仅通过包含⽂件,不直接声明类、函数和常量等,⽽执⾏的逻辑操作。
PHP编码规范
PHP 编码规范一、文件格式1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。
这是为了防止多余的空格或者其它字符影响到代码。
例如:<?php$foo = 'foo';2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。
例如:if (1 == $x) {$indented_code = 1;if (1 == $new_line) {$more_indented_code = 1;}}3. 变量赋值必须保持相等间距和排列。
例如:$variable = 'demo';$var = 'demo2';4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。
因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。
这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。
5. 每行结尾不允许有多余的空格。
二、命名约定1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。
2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀,且文件名命名使用小写字母和下划线的方式,多个单词之间以下划线分隔,例如config.inc.php , common.php,install_function.php 。
3. 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的。
4. 类名和文件名一致(包括上面说的大小写一致),且类名只允许字母,例如 UserAction类的文件命名是UserAction.class.php, InfoModel类的文件名是InfoModel.class.php 。
PHP项目开发规范文档
PHP项目开发规范文档1.简介PHP是一种开源的脚本语言,广泛用于Web开发。
本文档旨在提供PHP项目开发的规范,以保证代码的可读性、可维护性和可扩展性。
2.代码风格-缩进:使用4个空格进行缩进。
- 命名规范:使用驼峰命名法(camel case)命名变量、函数和类。
-常量命名规范:使用全大写字母和下划线命名。
-注释:用注释来解释复杂的代码逻辑和关键性的功能。
-换行:每行代码长度不应超过80个字符。
当一个表达式太长无法放在一行时,可以分成多行,并使用括号或者点操作符连接。
3.文件和目录结构- 将不同类别的文件分别放在不同的目录中,例如将数据库相关的文件放在一个名为"database"的目录中。
- 使用适当的文件命名来描述文件的功能,例如"UserController.php"。
4.安全性考虑-永远不要相信用户的输入,始终进行数据有效性验证和过滤。
- 使用准备好的语句(prepared statements)和参数绑定(parameter binding)来防止SQL注入攻击。
- 对于敏感数据,如密码或社会安全号码,至少应进行哈希(hash)加密。
5.性能优化-减少数据库查询次数:使用适当的索引、缓存查询结果或使用批量操作来减少数据库查询次数。
-尽量使用更高效的函数和算法来提高代码的性能。
-避免在循环中执行过多的数据库查询或文件读写操作。
6.异常处理- 使用try-catch语句来捕获并处理异常。
- 使用异常层次结构来处理不同类型的异常,例如自定义异常类继承自PHP的Exception类。
7.文档注释-使用文档注释来说明函数和类的使用方法、输入参数、返回值和异常情况。
- 使用标准的文档注释格式,例如PHPDoc。
8.版本控制- 使用版本控制系统(如Git)来管理代码,确保代码的版本可追踪和可恢复。
- 尽量使用分支来开发新功能或修复bug,并在合并到主分支之前进行代码审查和测试。
PHP编码规范文档
PHP编码规范目录1目的 (2)2使用角色 (2)3适用范围 (2)4文档格式定义 (2)5命名 (2)5.1命名的统一原则 (2)5.2常量命名 (2)5.3变量命名 (2)5.4子程序命名 (3)5.5接口命名 (3)5.6类命名 (3)5.7网站默认首页命名 (4)5.8文件命名 (4)5.9数据库方面命名 (4)6注释 (4)6.1总原则 (4)6.2规范 (4)6.2.1类的注释 (4)6.2.2接口的注释 (5)6.2.3子程序的注释 (5)7代码书写风格 (6)7.1总原则 (6)7.2控制结构 (7)7.3单条语句 (7)7.4注释 (8)7.5子程序 (9)7.6类 (9)8PHP性能规范 (9)1目的提高开发效率;降低程序的复杂度;提高代码可读性。
2使用角色3适用范围所有的PHP程序开发人员,PHP代码质量检测人员4文档格式定义✧实例:双标识):用空行进行段落分隔(建议)。
5命名5.1命名的统一原则反映现实世界的问题5.2常量命名✧具名常量是根据所代表的抽象实体而不是它所代表的数字来命名✧全部大写,使用“_”分隔单词5.3✧全局变量以“g_”开头,非全局变量不要以“g_”开头✧✧充分描述此变量的用途✧所有的“临时”变量都重新命以更有意义的名字✧✧✧不允许在命名的结尾使用下划线✧不要出现单字母的变量,如i,j,k(只有在控制循环数时且循环代码条数在3条以内,才可以考虑使用)✧循环下标的名字要有意义(如果循环的长度超出了一两行代码或者出现了嵌套循环,那么就应该是i、j或者k以外的其他名字)✧✧用count或者total来代表总数,用index来指代某个特定成员。
名字中用count或者index来代替num把限定词放在名字最后的例外,num已经是约定俗成的。
num放在变量名的开始位置代表一个总数:numCustomers表示的是员工的总数。
num放在变量名的结束位置代表一个下标:customerNum表示的是当前员工的序号。
php 代码规范 标准
php 代码规范标准PHP代码规范标准。
在进行PHP编程时,遵循一定的代码规范标准是非常重要的。
良好的代码规范可以提高代码的可读性、可维护性,有助于团队协作和代码质量的提升。
下面将介绍一些PHP代码规范标准的内容,希望能够对大家有所帮助。
1. 缩进和空格。
在PHP代码中,通常使用4个空格来进行缩进,而不是使用Tab键。
这样可以保持不同编辑器之间的一致性,并且可以避免在不同编辑器中出现排版混乱的情况。
另外,在运算符和逗号后面应该留一个空格,这样可以增加代码的可读性。
2. 命名规范。
在PHP代码中,变量、函数和类的命名应该具有一定的规范性。
通常情况下,变量名采用小写字母和下划线的组合,函数名采用小驼峰式命名法,而类名采用大驼峰式命名法。
这样可以使命名更加清晰明了,方便他人阅读和理解代码。
3. 注释。
良好的注释可以让他人更容易理解你的代码。
在PHP代码中,应该养成良好的注释习惯,对关键的代码逻辑进行注释说明,特别是一些复杂的算法和业务逻辑。
另外,注释应该使用英文书写,避免使用中文注释,以免出现乱码问题。
4. 代码结构。
在PHP代码中,应该遵循一定的代码结构规范,例如合理的文件目录结构、文件命名规范等。
另外,应该避免在一个文件中编写过多的代码,可以将一些相关的功能进行拆分,形成独立的模块,这样可以提高代码的可维护性。
5. 安全性。
在PHP编程中,安全性是非常重要的一个方面。
应该避免使用过时的PHP版本,及时更新代码中存在的安全漏洞,对用户输入的数据进行有效的过滤和验证,以防止SQL注入、XSS攻击等安全问题。
6. 错误处理。
良好的错误处理可以提高代码的健壮性和稳定性。
在PHP代码中,应该养成良好的错误处理习惯,对可能出现的异常情况进行适当的处理,避免出现未捕获的异常导致程序崩溃的情况。
7. 性能优化。
在PHP编程中,性能优化也是非常重要的一个方面。
应该避免在循环中进行大量的数据库查询和文件操作,尽量减少不必要的资源消耗,优化SQL查询语句,合理使用缓存等手段来提高程序的性能。
PHP语言规范文档
PHP语言规范文档1.文件命名和组织- PHP文件应以.php作为文件扩展名。
- 文件名应使用小写字母和下划线,例如:my_file.php。
-PHP文件应按照逻辑组织在合适的文件夹中。
2.代码格式化-使用可读性良好的缩进,使用空格或制表符。
-推荐使用4个空格或1个制表符进行缩进。
-推荐将每行代码限制在80个字符以内。
-在代码中适当添加空行,以提高可读性。
3.注释-使用注释来记录代码的作用、参数、返回值和其他重要信息。
-注释应以//开始,用于单行注释。
-使用/*和*/包裹多行注释。
4.命名约定- 推荐使用驼峰命名法来命名变量和函数,例如:myVariable,getUserInfo(。
- 类名使用首字母大写的驼峰命名法,例如:MyClass。
-常量名全部大写,使用下划线分隔单词,例如:MY_CONSTANT。
5.变量声明和赋值-在使用变量之前,必须先声明变量。
-推荐在一个作用域内一次性声明所有变量。
-变量名应具有描述性,避免使用单个字符或模糊的名称。
- 变量赋值时要加上适当的空格,例如:$variable = 10,而不是$variable=10。
6.控制结构-在条件结构中,括号应该以空格分隔开。
-在条件结构结束之后,推荐添加一个空行以提高代码的可读性。
-使用花括号包围所有循环和条件结构,并遵循适当的缩进格式。
7.函数和方法-函数名应该有描述性,用动词或动词短语命名,使用小写字母和下划线。
-参数列表应写在括号内,并用逗号分隔参数。
-函数应有明确的返回类型声明。
-函数应该有适当的注释,描述函数的作用、参数、返回值以及可能的异常情况。
8.类和对象-类名使用首字母大写的驼峰命名法。
-类的属性应该使用私有私有,通过公共方法去访问。
-类应该有适当的注释,描述类的作用、属性和方法。
9.异常处理- 推荐使用try-catch块来处理可能抛出的异常。
-异常处理代码应该足够详细,以便于识别和解决异常。
-关闭异常时,应将异常重新抛出或者记录相关信息。
PHP编码规范
引言本规范由编程原则组成,融合并提炼了开发人员长时间积累下来的成熟经验,意在帮助形成良好一致的编程风格。
以达到事半功倍的效果,如果有需要本文档会不定期更新。
适用范围如无特殊说明,以下规则要求完全适用于公司PHP项目。
一、代码标记<?php…所有php页面都必须以此格式来书写代码,结尾处不写 ?>二、注释所有函数和类都需要申明注释,用于说明此函数或类的功能。
格式如下:/*** Description** @author jaikuai* @param* @return*/对于返回类型是数组的,需要在注释中描述清楚此数组的结构信息代码添加简短的解释性内容,请使用 C++ 样式的注释“//”三、书写规则1)缩进每个缩进的单位约定是一个TAB(4个空白字符宽度),需每个参与项目的开发人员在编辑器(UltraEdit、EditPlus、Zend Studio等)中进行强制设定,以防在编写代码时遗忘而造成格式上的不规范。
本缩进规范适用于PHP、JavaScript中的函数、类、逻辑结构、循环等。
2)大括号{}、if和switch以下是符合上述规范的例子:if($condition){switch ($var){}}else{echo ‘’;}3)运算符、小括号、空格、关键词和函数每个运算符与两边参与运算的值或表达式中间要有一个空格左括号“(”应和函数关键词紧贴在一起,除此以外应当使用空格将“(”同前面内容分开;右括号“)”除后面是“)”或者“.”以外,其他一律用空格隔开它们;除字符串中特意需要,一般情况下,在程序以及HTML中不出现两个连续的空格;根据上述原则,以下举例说明正确的书写格式:$result = (($a + 1) * 3 / 2 + $num)) . ’Test’;$condition ? func1($var) : func2($var);$condition ? $long_statement: $another_long_statement;4)函数定义●函数的定义必须放在类中,不允许定义全局空间函数,函数名称具有此函数实现功能的定义,不允许出现无意义的函数名,采用驼峰命名法●函数定义中的左小括号,与函数名紧挨,中间无需空格;●具有默认值的参数应该位于参数列表的后面;●函数调用与定义的时候参数与参数之间加入一个空格;●必须仔细检查并切实杜绝函数起始缩进位置与结束缩进位置不同的现象。
php代码规范
PHP代码规范▪所有文件名均用小写字母、下划线和数字。
▪函数的命名使用小写字母和下划线的方式。
例如:get_client_ip;▪类文件都以.class.php为后缀,例如pay.class.php;▪类名和目录_文件名一致。
例如:类名zend_autoloader的目录是zend/autoloader.class.php; ▪变量的命名使用驼峰法,首字母小写或者使用下划线"_",如$userName,$_instance,通常下划线开头的属性属于私有属性;▪常量以大写字母和下划线"_"命名,如"HOME_URL";书写规范▪保持良好的PHP代码书写规范,合理使用缩进,保持代码美观。
▪所有字符串定义均使用单引号,除非需要转义的代码才允许使用双引号▪必须匹配大括号,大括号紧随function、class、if ... & so on ... 合格的格式化代码,即1./**2. * 递归方式的对变量中的特殊字符进行转义3. *4. * @access public5. * @param mix $value6. *7. * @return mix8. */9.function addslashes_deep($value){10.if(empty($value)){11.return$value;12.}else{13.return is_array($value) ?array_map('addslashes_deep',$value):addslashes($value);14.}15.}空行的使用▪<?php之后必须有且只有1个空行▪?>之前必须有且只有1个空行▪两个函数之间必须有1个空行。
▪return、die、exit之前如果有其他语句的情况下应加上一个空行。
▪在代码中我们不允许仅有空格的空行,并且不允许在行尾有多余的空格。
初级入门PHP编程规范文档
4.输出结果,推荐使用echo,echo()函数比print()函数运行速度快一些
5.PHP程序需要写注释,必须写在<?php?>里面,实例如下
/*第1种适合于多行*/
//第2种适合于单行
#第3种适合于单行
6.随机函数string str); //去除字符串首尾的空白字符
8.stringnl2br(string str);//将换行字符转换成HTML换行的<br/>指令
9.int printf(string format, mixed [args]…);//实现类似于C语言的输出格式
10.字母大小写转换
stringstrtoupper(string str)
字符串转化成大写字母
stringstrtolower(string str)
字符串转化成小写字母
stringucfirst(string str)
字符串第一个字母大写
stringucwords(string str)
字符串每个单词首字母大写
11.addslashes(string str)添加反斜杠,stripslashes(string str)删除反斜杠
方法中的参数命名
12.表单变量应用,Get和Post的主要区别
a.数据传递的方式以及大小;
b.GET会将传递的数据显示在URL地址上,POST则不会
c.GET传递数据有限制,一般大数据都得使用POST方式
13.PHP命名规则
类的命名:与自身有关,避免其父类名诱惑,使用大写字母作为词的分割,其他字母均使用小写,名字首字母大写,不要使用下划线。
编程规范
1.初步了解需求,绘制系统功能模块(word版),列出界面和界面功能(功能需求文档)。
PHP编码规范整理,很全很实用(图文版)
PHP编码规范整理,很全很实⽤(图⽂版)有⼀个组织叫做“php互操作性框架制定⼩组”,这个⼩组的主要⽬的是制定各种PHP编码规范的,下⾯就是我根据⼩组提供的建议整理的⼀些常⽤的编码规范。
PSR-1:1、PHP代码⽂件必须以<?php 或<?=标签开始。
2、PHP代码必须以不带BOM的UTF-8编码。
3、类名必须遵循⼤驼峰命名规范。
(⾸字母⼤写的驼峰命名)4、⽅法名必须遵循⼩驼峰命名规范。
(⾸字母⼩写的驼峰命名)5、类中的常量所有字母必须⼤写,单词之间使⽤_(下划线)分割。
6、类中的属性可以使⽤⼤驼峰、⼩驼峰、下划线分割等,不做强制规范。
PRS-2:1、代码必须使⽤4个空格⽽⾮tab键缩进。
(使⽤空格⽽不是tab键缩进的好处在于,避免在⽐较代码差异、打补丁、重阅代码以及注释时产⽣混淆。
并且,使⽤空格缩进,让对齐变得更⽅便。
)2、代码每⾏建议在80个字符之内,⼀定不能超过120个字符。
3、每个namespace命名空间声明语句和use声明语句块后边必须插⼊⼀个空⽩⾏,并且use必须在namespace之后。
4、类的⼀对花括号{}必须⾃成⼀⾏。
5、⽅法的⼀对花括号{}必须⾃成⼀⾏。
6、类的属性和⽅法必须添加访问修饰符(private、public、protected),abstarct和final必须声明在访问修饰符之前,⽽static必须声明在访问修饰符之后。
7、控制结构(if、while等结构语句)的关键字后必须要有⼀个空格,⽽调⽤函数或⽅法⼀定不能有。
8、控制结构的({)必须写在声明的同⼀⾏,⽽(})必须单成⼀⾏。
9、控制结构的左括号后和右括号前⼀定不能有空格。
10、所有php⽂件必须以⼀个空⽩⾏作为结束。
11、纯php代码⽂件必须省略最后的?>结束标签。
12、php所有的关键字必须⼩写,常量true、false、null也必须⼩写。
13、⽅法的参数中,每个参数后⾯必须要有⼀个空格,⽽前⾯⼀定不能有空格。
PHP代码编写规范
PHP代码编写规范一、编辑器设置(1)使用Tab缩进,不要使用空格鉴于很多编辑器在保存文件时会自动清除用于缩进的空格,所以我们一律使用Tab键进行缩进。
(2)UNIN文件格式请将编辑器设置对所有程序使用UNIX格式保存,不要使用Win32或者Mac 的格式。
例如,EditPlus里面Document->File Format(CR/LF)->Unix 。
对于windows格式文件,以Ctrl + M结束(vim下为^M),需要过滤掉:$text = strtr($text, "\x0D", "");二、命名设置1、公共库名称空间TPLIB,Tencent PHP Library2、变量命名(1)所有字母都使用小写(2)首字母根据变量值类型指定整数I、浮点数f、字符串s、布尔值b、数组a、对象o、资源r、混合类型m(3)使用’_’作为每一个词的分界例如:$i_age_max = 10;$f_price = 22.5;$s_name =‘harry’;$b_flag = true;$a_price = array();$o_object = new class();$r_file = fopen();$m_var = array_combine($a_name, $a_flag);3、类命名(1)使用大写字母作为词的分隔,其他的字母均使用小写,即驼峰格式。
(2)名字的首字母使用大写(3)不要使用下划线(’_')(4)interface接口最好使用大写字母I,并以Interface结尾例如:class NameOneTwoclass Nameinterface IExampleInterface ()4、方法命名(1)使用大写字母作为词的分隔,其他的字母均使用小写(2)名字的首字母使用大写,声明为“private” 或“protected” 的,使用’_’为前缀(3)不要使用下划线(’_')(4)与类命名一致的规则(5)对象的访问器总是以“get” 或“set” 为前缀,当使用设计模式如单态模式(singleton)或工厂模式(factory),方法的名字应当包含模式的名字,这样容易从名字识别设计模式。
代码文档规范范本
代码文档规范范本一、引言本文档是为了规范化编写和管理代码文档而制定的,旨在提高代码文档的质量和可读性,方便团队成员之间的协作与交流。
本文档适用于所有项目的代码文档编写,包括但不限于需求文档、设计文档、接口文档等。
二、文档命名规范为了便于管理和查找,所有的代码文档都需要按照以下规范进行命名:1. 使用有意义的文件名,能够清晰表达文档的用途和内容。
2. 文件名使用小写字母,单词间可以使用下划线进行分隔。
3. 文件名必须以文档类型作为后缀,例如.doc、.pdf、.md等。
三、文档结构规范为了使代码文档易于阅读和理解,文档的结构应该清晰,并且内容组织合理。
以下是常见的文档结构示范:1. 引言:对文档的目的、范围和主要读者进行简要说明。
2. 背景:描述项目背景和相关环境信息。
3. 功能描述:详细介绍项目的功能需求,包括用户需求和系统需求。
4. 设计方案:针对每个功能需求提供相应的设计方案,包括系统架构、模块划分、数据结构等。
5. 接口定义:定义与外部系统或模块的接口规范,包括输入输出参数、数据格式等。
6. 数据库设计:描述数据库结构、表的设计以及数据字典等。
7. 测试方案:说明对代码进行的测试方法和策略,包括单元测试、集成测试等。
8. 部署说明:描述代码的部署方式和环境要求。
9. 附录:包括其他相关的补充信息,如术语表、参考资料等。
四、文档编写规范1. 正文内容应简明扼要,字数不宜过多或过少。
2. 使用简洁、明确的语言,避免使用俚语、口语或技术术语过多。
3. 遵循统一的命名规范,包括函数名、变量名、类名等。
4. 提供必要的注释,解释代码的意图、实现方法或注意事项。
5. 确保文档的逻辑性和连贯性,段落之间应具有一定的过渡和衔接。
6. 针对不同的文档类型,采用相应的文档模板和结构,如需求规格说明书、接口设计文档等。
7. 使用合适的文档编辑工具,确保文档的格式统一、排版美观。
五、文档更新与版本管理为保持文档的实时性和准确性,在文档编写过程中需要及时更新和维护文档。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PHP文档规范及phpDoc指南目录1概述 (3)2PHPDoc/ phpDocumentor (3)2.1什么是PHPDoc/phpDocumentor (3)2.2phpDocumentor1和phpDocumentor2 (5)2.3phpDocumentor安装 (5)2.3.1pear安装 (5)2.3.2phpDocumentor安装 (6)3使用phpDocumentor生成文档 (6)3.1phpDocumentor使用说明 (6)3.2生成指定目录下的文档 (6)3.3生成指定文件的文档 (6)3.4指定文档标题 (7)4PHP注释规范 (7)4.1需要特别注意的地方 (7)4.2文件、类注释 (8)4.3方法注释 (8)4.4常用tag标签 (9)4.4.1常用tag列表 (9)4.4.2@param变量类型列表 (9)4.5常用的嵌入式{@tag }用法 (10)4.5.1{@link}用法 (10)4.5.2{@source}用法 (10)4.5.3其他inline tag (11)4.6<code></code>用法 (11)5参考资料 (12)1概述对于一个开发人员,文档总是最感到头疼的事情之一。
而且,很可能你对待文档会采取截然不同的2种态度:●当你使用别人的代码库的时候,最希望得到的是它的技术文档,尤其是当时间很紧,而你又不得不硬着头皮去读那些生涩的代码的时候。
●当写你自己的程序的时候,最不希望做的事情却是给它编写专门的技术文档,你会以种种理由给自己开脱:我的代码已经足够清晰了,完全不用再为它重新编写文档了……为了解决这个问题,文档工具由此产生。
按照规范格式编写代码注释,当代码写完了,技术文档也就完成了。
良好的代码注释不仅能够帮助开发人员在编写代码时缕清思路,尽可能避免逻辑bug,而且规范的代码注释还能够使用文档工具直接生成API手册。
2PHPDoc/ phpDocumentor2.1什么是PHPDoc/phpDocumentorPHPDoc(现在项目名改为了phpDocumentor)是PEAR下面的一个非常优秀的模块,它的目标是实现类似javadoc的功能,可以为你的代码快速生成具有相互参照,索引等功能的API文档。
目前PHPDoc有3个主要的版本:●PHPDoc:此版本最高到 1.0beta,已经停止维护,升级为phpDocumentor,PHPDoc的官网是http://www.phpdoc.de/,有兴趣的话可以看看。
此版本生成的文档格式如下图:●phpDocumentor1:此版本最高到1.4.4,已经升级到phpDocumentor2,目前网上大部分的PHP开源项目都是由此版本工具生成的API手册。
官网:/,此版本生成的文档格式如下图:●phpDocumentor2:此版本还在升级维护中,目前最高版本是2.0.0alpha1。
官网:/,此版本生成的文档格式如下图:2.2phpDocumentor1和phpDocumentor2因为最初的版本PHPDoc早已停止维护和升级,本文不再介绍和使用。
phpDocumentor从1.4.4直接升到了phpDocumentor2,2比较于1做了如下改变:●High performance:更高的性能。
优化后的phpDocumentor生成同一个项目的文档,比前一版本最高节省90秒。
●Template System:提供了非常灵活的模板系统,用户可以订制自己的API手册样式。
而且也修正了1.4.4非常讨厌的默认iso-8859-1编码,改成了默认utf-8。
●Reports & Charts:可以生成开发人员可能感兴趣的图标和报告,如类的继承关系、接口实现拓扑图,TODO就列表等。
●Plugins:增加了以AoP模式实现的的插件功能,开发人员可以开发或重写自己的tag解释方法。
在安装和使用上,phpDocumentor1和phpDocumentor2基本一样,所以下文就统一以phpDocumentor说明。
(因为phpDocumentor2的默认responsive模板生成的文档实在不太好看和不习惯,而且phpDocumentor2的新特性大多都用不上,所以笔者现在用的是能够生成上PHP手册样式的phpDocumentor1.4.4)2.3phpDocumentor安装2.3.1pear安装因为phpDocumentor是PEAR的一个模块,虽然phpDocumentor也支持单独下载使用,但最后以PEAR模块安装。
所以如果PHP没有安装PEAR,需要先安装PEAR:Mac OS X:2.3.2phpDocumentor安装●phpDocumentor1.4.4安装要求:PHP version 4.1.0或以上说明:phpDocumentor1.4.4比较讨厌的地方是文档的tpl模板默认编码是iso-8859-1,而不是常用的utf-8,如果不修改的话可能会产生中文乱码的问题。
修改默认编码方法如下:找到PEAR的安装目录,以笔者的电脑为例,PEAR的安装目录是:/opt/local/lib/php/pear●phpDocumentor2安装要求:PHP 5.2.6或以上,最好安装有XSL和Graphviz扩展。
如果需要生成PDF格式的文档,还需要安装wkhtmltopdf扩展。
3使用phpDocumentor生成文档3.1phpDocumentor使用说明使用phpdoc –h命令可以产看帮助手册,本文不再详述。
3.2生成指定目录下的文档3.3生成指定文件的文档3.4指定文档标题4PHP注释规范4.1需要特别注意的地方●需要生成文档的注释必须是以“/**”开头,以“*/”结尾。
主流的IDE开发工具(如Eclipse,Zend)会用不同的颜色来区分下面的几种注释。
●●一般以“/*”开头,而public方法以“/**”开头。
4.2文件、类注释4.3方法注释4.4常用tag标签4.4.1常用tag列表特别说明;●@version:如果代码版本控制工具使用的是CVS,可以设置成“@version$Id: Exp $”,CVS在提交代码时会自动填充文件的版本信息●@see:当某些注释说明已经写过不想再重复写,或有关联的方法或类需要参见,此时用到@see4.4.2@param变量类型列表@param 标签需要指定参数类型,可以使用的类型如下:●string 该参数是一个字符型变量。
●array 该参数是一个数组。
●int该参数是一个数值型,同integer●integer 该参数是一个数值型。
●integer (octal) 该参数是一个数值型,并且是按照八进制方式存放。
●integer (hexadecimal) 该参数是一个数值型,并且是按照十六进制方式存放。
●boolean 该参数是一个布尔型。
●mixed 该参数的类型是可变的,可以上面几种类型的组合。
不过,在随后的说明中一般要说明可以接受的变量的类型。
●void 无返回值,只用于@return标签,如@return void以上类型同样适用于@property和@return4.5常用的嵌入式{@tag }用法嵌入式{@tag }(即inline tag)是在写注释文字段时,需要在文字段中加入链接或锚点,此时用到嵌入式tag。
4.5.1{@link}用法在写注释文字段时需要加一些URL链接或是锚点,在生成的文档中用户可以通过鼠标点击进入这个链接或锚点,或是有关联的方法或类需要参见,此时用到{@link}。
格式如下:{@link URL [description]}{@link element [description]}举例:4.5.2{@source}用法当需要在文档中显示具体的实现代码时,可以使用此标签。
格式如下:●显示该方法或类的所有代码:{@source}●显示从指定行开始到方法或类的结尾代码:{@source startline}●显示从指定行开始,到指定的行数结束的代码:{@source startline number_of_lines}* {@source }* displays without a break in the flow*/function element($pages){if (empty($pages)){die("<b>ERROR</b>: nothing parsed");}}相当于===》/*** Text with an inline source tag:** <code>* function element($pages)* {* if (empty($pages))* {* die("<b>ERROR</b>: nothing parsed");* }* }* </code>* displays without a break in the flow*/当然,如果不用此标签也可以直接使用<code></code>标记,具体说明见下文。
4.5.3其他inline tag其他的不太常用,具体参见官方文档:/docs/latest/index.html4.6<code></code>用法<code></code>标签的主要作用是为了显示代码段示例。
当然,如果有大段的注释文本,而又懒得去加<br/>等HTML标签进行换行美化,也可以使用此标签。
5参考资料1、/developerworks/cn/linux/sdk/php/pear3/index.html2、/。