后端框架地址:
git@gitee.com:xielisen/xcore.git
框架使用规范,内部沟通

Controller命名规范
1, 首字母大写,其余小写
2, 对应数据库名称. 不要下划线
3, 方法名 驼峰. 首字母小写
4, 通用方法名称 add, edit, detail, lists
5,
注释: 不能太多, 按功能代码块: 简单注释
空行: 不同的代码块,可空一行区分开. 不能空多行
sql: 长sql , 要sql美化
缩进: 代码块,缩进分明.
6, 变量命名
1) 简短常见, $rs, $res, $result,$info, $lists,
2) 模型 直接用函数标识, 不要中间变量
3) 前缀区分

程序流程
1: 验证参数
2: 格式化参数
3: 简单的入库, 修改和查询 直接调用db
4: 复用的, 逻辑复杂的. 一定要写model
5: 查询不要写model. 除非很多复用的地方
6: 涉及图片处理的. 注意要调用底层图片处理类

Model命名规范
1, 首字母大写, 驼峰
2, 对应数据库名称
3, 通用方法名称 add, edit, detail, lists
4, 方法的颗粒度要合适. 不能大而全, 也不能太小导致数据多次查询

程序流程
1: 参数要顾名思义
2: 尽量考虑扩展和通用
3: 涉及权限的, 一定要验证. 防止越权
4: 统一错误处理方式
5: 统一失败返回false

命名原则:
1, 简短,常用的单词
2, 类名已表达了的意思, 方法名不要重复
比如:
User类下添加用户. 命名为: add 而不能命名为addUser
3, 关键词, 可以加s 避开关键词

php 后端规范的更多相关文章

  1. Atitit   发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化

    Atitit   发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化 大段内容务必要替换转义换行符号1 提交务必使用utf编码,否则解码后的可能缺失,是web serv ...

  2. web 后端规范与思想

    一.分层1.Web层(接受和发送Http请求的,封装;web层.controller层) 2.业务逻辑层(服务层,XXXService) LoginController(接受参数,判断是否非法,传给服 ...

  3. SpringBoot写后端接口,看这一篇就够了!

    摘要:本文演示如何构建起一个优秀的后端接口体系,体系构建好了自然就有了规范,同时再构建新的后端接口也会十分轻松. 一个后端接口大致分为四个部分组成:接口地址(url).接口请求方式(get.post等 ...

  4. 【项目实践】SpringBoot三招组合拳,手把手教你打出优雅的后端接口

    以项目驱动学习,以实践检验真知 前言 一个后端接口大致分为四个部分组成:接口地址(url).接口请求方式(get.post等).请求数据(request).响应数据(response).如何构建这几个 ...

  5. nodejs:grunt使用合并压缩的基本使用

    一.模块化历史 1,nodejs出现:主要解决后端js规范 2,commonjs:这个组织出来一些服务器规范 3,后端规范commonjs应用升级到前端commonjs2:cmd规范(seajs)和完 ...

  6. BugPhobia开发篇章:Beta阶段第I次Scrum Meeting

    0x01 :Scrum Meeting基本摘要 Beta阶段第一次Scrum Meeting 敏捷开发起始时间 2015/12/10 00:00 A.M. 敏捷开发终止时间 2015/12/12 23 ...

  7. UltraSoft - Beta - 项目展示

    UltraSoft - DDL Killer - Beta 项目展示 团队介绍 CookieLau fmh 王 FUJI LZH DZ(转出) Monster hdl(转入) PM & 后端 ...

  8. UltraSoft - DDL Killer - Alpha 项目展示

    团队介绍 CookieLau fmh 王 FUJI LZH DZ Monster PM & 后端 前端 前端 前端 后端 后端 软件介绍 项目简介 项目名称:DDLKiller 项目描述:&q ...

  9. 后端api规范说明文档

    我们此次后端api的实现主要是按照RESTful api规范来设计的,就是符合REST架构下设计api的规范.简单的来说REST结构就是:利用URL定位资源,用HTTP动词(GET,POST,PUT, ...

随机推荐

  1. java中多线程的两种创建方式

    一丶继承Thread类实现多线程 第一步:继承Thread类第二步:重写run()方法第三步:创建继承了Thread类的对象 , 调用start()方法启动. //线程创建方式一 : /* 第一步:继 ...

  2. keepalived+nginx高可用实现

    1.keepalived介绍 keepalived最初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了实现高可用的VRRP功能.keepalived除了能 ...

  3. 51Nod 1116 K进制下的大数(暴力枚举)

    #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> us ...

  4. net 上传视频

    [HttpPost]        public ActionResult MultiUpload()        {            System.Web.HttpFileCollectio ...

  5. Codeforces Round #405 (rated, Div. 2, based on VK Cup 2017 Round 1) D

    Description A tree is an undirected connected graph without cycles. The distance between two vertice ...

  6. `<img>`放到`<div>`中底部出现空隙 以及解放方案.

    形成情况: 外部的 不设置宽高, 由内部图片撑开 撑开后, 底部会有空隙 问题原因: div元素中的行内元素的默认vertical-align对齐方式是基线baseline img是行内元素, 所以会 ...

  7. web简单的整体测试

    网站性能压力测试是性能调优过程中必不可少的一环.只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题 ab测试 ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问.它 ...

  8. 关于发布WP 8.1应用信息不匹配问题的解决办法

    错误提示:   与此更新关联的程序包标识符与已上传程序包中的标识符不匹配: The package identity associated with this update doesn't match ...

  9. nginx 80端口重定向到443端口

    server { listen ; server_name www.域名.com; rewrite ^(.*)$ https://${server_name}$1 permanent; } serve ...

  10. re正则表达式公式讲解4

    1.re,split()  字符串分离 import re s = "abc20tyu9iou16hij25" m = re.split("\d",s) #以& ...