视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
php开发规范有哪些
2020-11-03 18:19:36 责编:小采
文档

源文件

代码使用<?php开头,忽略闭合标签?>

文件格式必须是无BOM UTF-8格式

一个文件只声明一种类型,如class和interface不能混写在一个源文件中

缩进

使用4个空格来缩进,IDE可以设置

(推荐学习:php视频教程)

行长度

每行120个字符

关键字

所有关键字均为小写,如true、false

命名

类名为大驼峰法,如UserModel

类方法名为小驼峰法,如getUserId()

函数使用小写字母加_组合,如get_cookie()

变量名使用小驼峰法,如$userId

常量定义为大写字母加_组合,如IS_DEBUG

代码注释标签

类文件中对类、方法、属性进行注释,使用@param @return @throwns

@param注释写出详解,如@param string $username 用户名

业务模块

路由为小写字母加_组成,如/api/get_user_info

View层负责数据展示

Controller层负责输入参数校验,最外层捕捉异常,调用Logic和View视图层

Logic层负责具体业务逻辑,调用Model层,返回处理数据

Model层负责数据表查询和关联关系

异常类需分清功能,如ParamException表示参数错误,UserException表示自定义异常

异常需分类定义code,使用PHP类常量代替,如

<?php
namespace appexceptionscodes;

class UserExceptionCode extends BaseExceptionCode {
 const NO_AUTH = 1000001;
 const NO_AUTH_MSG = '不具有权限';
 const STATUS_EXCEPTION = 1000002;
 const STATUS_EXCEPTION_MSG = '状态异常'; 
}

数据表文件如有Enum类型,使用PHP类常量代替,如

<?php
<?php
namespace appenums;

class UserEnum extends BaseEnum {
 const STATUS_DELETED = -1;// 已删除
 const STATUS_DISABLE = 0;// 禁用
 const STATUS_ENABLE = 1;// 正常

 const AUTH_GUEST = 1;// 匿名用户
 const AUTH_GENERAL_ADMIN = 2;// 普通管理员
 const AUTH_SUPER_ADMIN = 3;// 超级管理员
}

其中STATUS和AUTH为数据表映射字段名

Api接口输出,示例

{
 "code" : 0,
 "msg" : "success",
 "data" : {
 "userId" : 100
 }
}

其中code与msg为必填字段,data为空的情况下不填,示例

{
 "code" : 0,
 "msg" : "success",
 "data" : {
 "userId" : 100
 }
}

其它

数组,键为字符串时候使用单引号,只有一个键时候使用单行,示例

$arr = [ 'userId' => 100 ];

多个键时候使用多行,示例

$arr = [ 
'id' => 100, 
'username' => 'admin',
];

相关文章教程推荐:php教程

下载本文
显示全文
专题