PHP编程规范标准20020123概述
版权申诉
188 浏览量
更新于2024-07-02
收藏 318KB DOC 举报
"PHP程序编码规范标准20020123.doc"
本文档详细介绍了PHP编程的标准和最佳实践,旨在提升代码质量、可读性和维护性。这份规范由Fredrik Kristiansen编写,基于Todd Hoff的《C++编程标准》改编,并允许自由复制和改进。以下是规范的主要内容:
**命名规则**
1. **合适的命名**:变量、函数、类等应具有清晰、有意义的名称,以便于理解其用途。
2. **缩写词不要全部使用大写字母**:遵循驼峰命名法(CamelCase)或下划线分隔(snake_case)。
3. **类命名**:类名应使用首字母大写的驼峰命名法,如`ClassName`。
4. **类库命名**:类库名通常以全大写字母的缩写表示,如`DB`代表数据库类库。
5. **方法命名**:方法名遵循类名的驼峰命名法,如`methodName`。
6. **类属性命名**:属性名使用下划线分隔的命名法,如`$property_name`。
7. **方法中参数命名**:参数名同样应具有描述性,遵循驼峰命名法或下划线分隔法。
8. **变量命名**:变量名应清晰反映其用途,遵循相应的命名规则。
9. **引用变量和函数返回引用**:使用`&`符号表示引用,但要谨慎使用。
10. **全局变量**:避免使用全局变量,因为它们可能导致难以预料的副作用。
11. **定义命名/全局常量**:常量名全大写,下划线分隔,如`CONSTANT_NAME`。
12. **静态变量**:静态变量前加`static`关键字,用于在类内保持状态。
13. **函数命名**:函数名应简洁且明确,遵循驼峰命名法。
14. **php文件扩展名**:PHP文件一般使用`.php`作为扩展名。
**文档规则**
1. **评价注释**:注释应提供清晰的解释,帮助理解代码功能。
2. **CommentsShouldTellAStory**:注释应能讲述代码背后的故事。
3. **DocumentDecisions**:记录决策过程,解释为何选择某种实现方式。
4. **使用标头说明**:每个文件开头应包含文件描述和作者信息。
5. **MakeGotchasExplicit**:明确指出可能的问题和陷阱。
6. **InterfaceandImplementationDocumentation**:接口和实现的文档应分开记录。
7. **目录文档**:大型项目应有整体的架构和模块文档。
**复杂性管理规则**
1. **层**:按照功能分层,提高代码组织性。
2. **Open/ClosedPrinciple**:设计模块应开放扩展,关闭修改。
3. **ServerConfiguration**:配置应稳定且易于管理。
**类规则**
1. **DifferentAccessorStyles**:定义访问器(getter/setter)时保持一致性。
2. **别在对象架构期做实际的工作**:构造函数应只用于初始化,避免业务逻辑。
3. **Thinvs.FatClassInterfaces**:提倡薄接口,避免类过于庞大。
4. **短方法**:方法应尽可能简洁,避免长方法。
**进程规则**
1. **UseaDesignNotationandProcess**:使用设计模式和流程图辅助设计。
2. **CodeReviews**:实施代码审查,确保代码质量。
3. **CreateaSourceCodeControlSystemEarlyandNotOften**:尽早建立版本控制系统。
4. **CreateaBugTrackingSystemEarlyandNotOften**:早期建立bug跟踪系统。
5. **HonorResponsibilities**:确保每个组件都履行其职责。
**格式化**
1. **大括号{}规则**:大括号对齐,保持代码整洁。
2. **缩进/制表符/空格规则**:使用一致的缩进风格,如4个空格。
3. **小括号、关键词和函数规则**:保持代码对齐,提高可读性。
4. **IfThenElse格式**:if-else结构应有适当的缩进。
5. **switch格式**:switch语句应清晰,每个case后跟break。
6. **continue,break和?的使用**:避免不必要的复杂逻辑。
7. **每行一个语句**:每行只写一条语句。
8. **声明块的定位**:声明通常位于函数或类的顶部。
**杂项**
1. **不要不可思议的数字**:避免使用不明确的常数值,应使用常量或变量表示。
2. **错误返回检测规则**:正确处理错误返回,避免忽视异常情况。
3. **不要采用缺省值测试非零值**:避免用`!=0`检查,应使用`is_null()`或其他适合的函数。
4. **布尔逻辑类型**:避免使用非布尔值进行逻辑判断。
5. **通常避免嵌入式的赋值**:保持表达式简单,减少复杂度。
6. **重用您和其他人的艰苦工作**:利用已有的库和框架,避免重复造轮子。
7. **使用if(0)来注释外部代码块**:临时禁用代码块时使用。
8. **其他杂项**:包含更多特定的编码建议和注意事项。
**PEAR编码标准**
1. **Pear-Indenting_**:遵循PEAR的缩进规则,如使用4个空格。
2. **Pear其他规则**:还包括关于命名、注释、代码结构等方面的PEAF编码指南。
这份PHP编码规范旨在创建一致、可维护和高质量的代码,开发者应遵循这些指导原则以提高代码的可读性和团队协作效率。
2022-01-12 上传
2011-08-07 上传
2024-01-16 上传
2021-10-03 上传
2010-05-09 上传
点击了解资源详情
2009-01-14 上传
2022-01-12 上传
2021-01-15 上传
智慧安全方案
- 粉丝: 3802
- 资源: 59万+
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程