1
0
mirror of https://gitee.com/tawords/tawords-docs synced 2025-01-31 04:50:28 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
tawords-docs/docs/manual/standard/code-specification.md

5.2 KiB
Raw Blame History

命名规则

?> 当前规范订立日期2021年8月17日

为避免重复及便于识别,应用名中不能出现特殊字符,应用识别名须遵循相应书写规范。不得使用拼音作为命名方式。

文件名称规范

项目所有目录及文件名全部采用小写+下划线 _ 形式(类文件名除外),例如 system_basic.php,不得出现大写字母。

类的文件名以 类名.class.php 为后缀。(一个.class.php文件只能包含一个类的定义

配置文件的文件名以 文件名.inc.php 为后缀。inc即为include file

类命名规范

单词首大写,其余字母小写,如 TawordsUserAccount

类名不宜超过三个字母。

函数、方法命名规范

函数与方法的区别:函数是单独存在的,方法是依赖于类存在的。

全部使用小写,使用下划线_连接。如:get_user_info

变量命名规范

  1. 变量首字母小写采用驼峰式命名法Camel-Case即“小驼峰”。
  2. 除非特殊情况,一般不使用下划线
  3. 不要使用容易产生混淆的命名(如 $data1$data2
  4. 数组变量名后带 Array ,如 $userInfoArray = array();
  5. 全局变量前带 g ,以明确变量作用域,如 $gUser(全局变量 $bta 除外)
  6. 静态变量后带 Static 或前带 s ,如 $sUrl$fileArrayStatic
  7. 对象变量后带 Object ,如 $databaseObject

如:$userName$delUserSql

另外,全局变量为:$bta

常量命名规范

使用英文名词、动词,所有字母均大写,单词间使用下划线 _ 分隔。

如:define( 'A_GLOBAL_CONSTANT', "Heool world!" );

数据库表名命名规范

所有字母均小写,使用下划线 _ 连接,表名前需添加统一前缀(默认为 bta_ ),如:bta_users

代码规范与编码风格

?> 当前规范订立日期2021年8月17日

  1. 对于只含有php代码的文件在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。

  2. 缩进应该能够反映出代码的逻辑结果尽量使用四个空格不要使用制表符TAB因为这样能够保证有跨客户端编程器软件的灵活性。

  3. 函数、方法名与参数列表小括号间,参数列表小括号与花括号之间使用空格隔开,如:

    function get_user_info ($userId) {
        // code
    }
    
  4. 当一个字符串是纯文本组成的时候(即不含有变量时),以单引号(') 作为定界符,如:$name = 'tawords';

  5. 当用点号 . 连接各字符串的时候,字符串与点号间用一个空格隔开,且允许把它分割成多行以增强可读性。

  6. 类中方法用 private protected 或者 public 表明其作用域。

  7. 即使if语句可以不适用花括号的情况下也建议带上花括号。

注释规范(待定)

?> 当前规范订立日期2021年8月17日

@version表示当前代码文件迭代版本 @since 表示从该版本开始加入该类、接口、方法 @auther表示当前代码作者 @modify表示当前代码修改时间 @deprecated 表示不建议使用该类/接口/方法 @exception 标注Runtime异常 @throws 标注非Runtime异常

普通代码文件头

/**
 * 背Ta单词 tawords
 *
 * @version      1
 * @since        1.0.0
 * @auther       Coding Zhang
 * @modify       2021.08.17
 */

/**
 * 背Ta单词 tawords
 *
 * 一句话简介
 *
 * @version      1
 * @since        1.0.0
 * @auther       Coding Zhang
 * @modify       2021.08.17
 */

主路由文件添加官网地址以及开源Git仓库地址

/**
 * @website      tawords.com
 * @repository   https://gitee.com/tawords/tawords/
 */

类、接口

/**
 * 〈一句话功能简述〉LogManager 类集中控制对日志读写的操作。
 * 〈功能详细描述〉全部为静态变量和静态方法,对外提供统一接口。分配对应日志类型的读写器,读取或写入符合条件的日志纪录。
 * @author [作者]张三,李四,王五
 * @version [版本号, YYYY-MM-DD]1.2, 2001-03-25
 * @see [相关类/方法]LogIteraotor
 * @see [相关类/方法]BasicLog
 * @since [产品/模块版本]CommonLog1.0
 */

函数、方法

/**
 * 〈一句话功能简述〉
 * 〈功能详细描述〉
 * @param [参数1] [参数1说明]
 * @param [参数2] [参数2说明]
 * @return [返回类型说明]
 * @exception/throws [违例类型] [违例说明]
 * @see [类、类#方法、类#成员]
 * @deprecated
 */
/** 
* @Purpose: 
* 执行一次查询 
* @Method Name: Query()
* 
* @Param: string $queryStr SQL查询字符串 
* @Param: string $username 用户名
* 
* @Author: Michael Lee
*
* @Return: mixed 查询返回值(结果集对象) 
*/ 
function($queryStr, $username)

本规范订立时,参考了以下文章:

PHP编码规范命名规则

php中类文件名的命名的规则是什么

PHP程序员必知的文件名命名规范