美文网首页
2019-01-14

2019-01-14

作者: 苟利国家生死以_3d0e | 来源:发表于2019-01-14 10:37 被阅读0次

    前言:


    为方便自己或者后人阅读之前写的代码,写php的要求遵循以下代码规范,大家看一看,不强求全部做到,尽量做到即可。
    参考自ThinkPHP项目及代码规范指北PSR-1 基础编码规范PSR-2 编码风格规范

    编写规范


    • 新项目至少使用tp5.0以上的框架,尽量遵循MVC架构

    • 代码 必须 使用 4 个空格来进行缩进。

    • 类的开始花括号({)写在函数声明后自成一行,结束花括号(})也写在函数主体后自成一行。

    class Lottery extends Controller
    {
    }
    
    • 方法的开始花括号({)写在函数声明后自成一行,结束花括号(})也写在函数主体后自成一行。
    public function index()
    {
    }
    
    • 控制结构的开始花括号({)写在声明的同一行,而结束花括号(})写在主体后自成一行。
    for ($i = 0; $i < 10; $i++) {
        // for 循环主体
    }
    

    类和文件命名


    • 类(包括接口、Trait)文件名和类名保持一致,并且使用首字母大写的驼峰命名;

    • 函数文件、配置文件、路由定义文件等文件名使用小写规范;

    • 无论类还是普通文件都使用.php后缀;

    • 目录名统一使用小写规范,并且使用单数规范;

    • 模板文件使用小写规范;

    配置和变量命名


    • 配置参数名统一使用小写规范;

    • 常量定义统一使用大写规范;

    • 环境变量定义统一使用大写规范;

    函数和类、属性命名


    • 函数的命名使用小写字母和下划线(小写字母开头)的方式,例如 get_client_ip

    • 方法的命名使用驼峰法(首字母小写),例如getUserName

    • 属性的命名使用驼峰法(首字母小写),例如 tableNameinstance

    • 特例:以双下划线__打头的函数或方法作为魔术方法,例如__call__callStatic

    数据表命名


    数据表和字段采用小写加下划线方式命名,例如 think_user表和 user_name字段,禁止使用驼峰、中文或者拼音作为数据表及字段命名。

    控制器规范


    • 控制器建议继承一个公共的控制器类,便于统一调整和增加通用逻辑。并建议继承系统的控制器类,以便于使用控制器中间件功能。

    • 对于控制器操作方法的拦截以及统一处理应当使用中间件独立操作。

    • 控制器的代码应当尽量少,以确保逻辑清晰和可读性。始终保持controller层作为访问控制器层的名称。

    • 请求数据的验证操作统一使用验证器进行验证。

    • 不要在操作方法中输出除了调试信息之外的任何内容,而是通过return返回需要输出的内容。

    • 操作方法中始终明确响应输出的类型,而不要依赖全局配置。

    数据库和模型规范


    • 主键统一使用id

    • 外键统一使用resource_id形式(例如user_id);

    • 模型数据字段统一使用小写+下划线命名,和数据表字段规范一致;

    • 数据表统一添加系统时间字段(create_timeupdate_time);

    • 当使用软删除,添加时间字段delete_time,类型和系统时间字段保持一致;

    • 模型类应该继承一个统一的公共类,便于调整和统一设置;

    模板规范


    • 模板文件应当引入一个公共模板,用于引入公共的css、js文件

    • 模板文件应当使用操作方法转换为小写+下划线方式命名;

    • 当你需要跨模块调用的时候,尽量在控制器操作方法中明确要渲染的模板;

    • 避免在模板文件中添加逻辑代码,应当只是数据的输出;

    • 使用static目录统一存放静态资源文件;

    Api规范


    • 待更新···

    相关文章

      网友评论

          本文标题:2019-01-14

          本文链接:https://www.haomeiwen.com/subject/uycddqtx.html