Skip to content

ShaoLi0ly/code-fmt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 

Repository files navigation

代码规范 (代码使用php示例)

一. 代码

  1. 普通变量命名必须要有意义,使用小写开头,使用驼峰命名,例如:
    // 正例
    $hikeName = "谢小礼";
    
    // 反例
    $hn = "谢小礼";
  2. function命名必须要有意义,使用小写开头,使用驼峰命名,例如:
    // 正例
    function getHikeName() {}
    
    // 反例
    function getn() {}
  3. phalcon 部分需要暴露接口的方法在遵循上方规则的同时需要添加Action后缀
    // 正例
    function getHikeNameAction() {}
    
    // 反例
    function gethikenameaction() {}
  4. 类命名必须要有意义,使用大写开头,使用驼峰命名,例如:
    // 正例
    class HikeActivity {}
    
    // 反例
    class hikeactivity {}
  5. phalcon 需要暴露接口的类在遵循上方规则的同时需要添加Controller后缀,并且首字母和Controller首字母必须大写,其余字母不允许大写
    // 正例
    class HikeactivityController() {}
    
    // 反例
    class HikeActivityController() {}
  6. 常量命名全部大写,使用下划线_分隔,必须在后面添加注释,例如:
    const BILL_ITEM_TYPE_INCOME = 1; // 收入
  7. 方法的变量使用空格分开,例如:
    // 正例
    function createPayment($hiker, $type, $businessNos, $name, $desc, $money, $businessTypes, $bankNo = null, $type_channel = 1) {}
    
    // 反例
    function createPayment($hiker,$type,$businessNos,$name,$desc,$money,$businessTypes,$bankNo=null,$type_channel=1) {}
  8. 赋值操作符(=+= 等)、逻辑操作符(&&||)、等号操作符(==!=)、关系运算符(<><=>=)等 需要左右各有一个空格 例如:
    // 正例
    $num = 1;
    if ($num == 2) {}
    
    // 反例
    $num=1;
    if($num==2){}
  9. 不要使用意义不明的数值,尽可能使用常量,例如:status字段的更新,不要使用01,使用自定义的常量STATUS_OFFSTATUS_ON
  10. 一个function只做一个用途,如果有多个用途请拆分为多个function,例如:一个function需要返回一个由多个数组合并排序后的数组,请拆分为数组合并和数组排序两个function,然后通过这个function调用
  11. 文件必须使用不带BOM的UTF-8编码
  12. 使用4空格缩进

二. 注释

  1. 方法头注释
    1. 必须包含描述
    2. 必须包含作者
    3. 必须包含时间 例如:
    // 正例
    /**
     * [getDataByAid 根据活动获取数据]
     * @Author   xsl
     * @DateTime 2018-02-23
     * @Modify 修复通通过实物审核前端无反馈的问题 by xsl 20180306
     */
    
    // 反例
    /**
    *[getDataByAid]
    */
  2. 方法内新增、修改代码注释一定要标注修改功能、修改人和时间
    1. 必须包含描述
    2. 必须包含作者
    3. 必须包含时间
    4. // 后面需要加一个空格 例如:
    // 正例
    // 规则更改,公司员工带队境外活动仍然获取100/天补贴 by xsl 2017041
    
    // 反例
    //规则更改

三. 其他

  1. 数据库、数据库表、数据库字段命名全部小写,使用_分隔,例如:hike_activity
  2. 代码根据功能或者业务分好目录,比如工具放到utils,插件放到plugins

About

代码规范,按需更新

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published