框架说明
介绍
该项目是一款基于ThinkPHP5.1 + LayuiAdmin 的极速后台开发框架。
必读文档参考链接:
- PHP 标准规范: <PSR 是 PHP Standard Recommendations 的简写,由 PHP FIG 组织制定的 PHP 规范,是 PHP 开发的实践标准> (请严格安装标准编码,代码提交时会进行编码规范规则自动校验,不通过无法提交);
- ThinkPHP5.1文档:请仔熟读该文档,明白框架原理;真正的把框架用好,提高代码性能和编码效率;
- ThinkPHP官方博客:改文档介绍了一些关于TP框架的一些技巧和说明,有助于理解框架的应用;
- LayUI前端框架:LayUI框架文档介绍,特别是关于模块规范、命名规则、表格、表单和模板引擎一定要研究透彻;
- LayuiAdmin文档:layuiAdmin pro (单页版)是完全基于 layui 架构而成的后台管理模板系统,可以更轻松地实现前后端分离;
部署说明
环境要求
PHP >= 7.0
Mysql >= 5.6 (需支持innodb引擎)
Nginx >= 1.15
PDO PHP Extension
MBstring PHP Extension
CURL PHP Extension
Composer (用于管理第三方扩展包)
Node.js (可选, 上线部署时打包前端框架)
安装方法
1、安装依赖
SVN同步下代码后, 通过 composer 安装依赖包
composer install
2、命令行安装
一键安装FastAdmin的参数请使用php think install --help查看
php think install -u 数据库用户名 -p 数据库密码
3、绑定虚拟主机目录
添加虚拟主机并绑定到应用目录下的public目录,请尽量使用独立域名
4、设置调试模式
本地调试是,在项目根目录下添加.ENV文件,配置文件会覆盖项目配置,内容参考如下:
//基础配置
APP_NAME = 教育行业办公系统
APP_DEBUG = true
APP_TRACE = true
//数据库配置
DATABASE_HOSTNAME = localhost
DATABASE_DATABASE = eduoa
DATABASE_USERNAME = root
DATABASE_PASSWORD = 123456
DATABASE_HOSTPORT = 3306
DATABASE_PREFIX = eduoa_
注意:.ENV文件为个人本地开发私有文件,请勿加入加入项目Git或SVN中
其它命令
一键生成API文档
请确保你的API模块下的控制器代码没有语法错误,控制器类注释、方法名注释完整,注释规则请参考下方注释规则;
常用命令:
//一键生成API文档
php think api --force=true
//指定https://www.example.com为API接口请求域名,默认为空
php think api -u https://www.example.com --force=true
//输出自定义文件为myapi.html,默认为api.html
php think api -o myapi.html --force=true
//修改API模板为mytemplate.html,默认为index.html
php think api -e mytemplate.html --force=true
//修改标题为FastAdmin,作者为作者
php think api -t FastAdmin -a Karson --force=true
//查看API接口命令行帮助
php think api -h
参数介绍
-u, --url[=URL] 默认API请求URL地址 [default: ""]
-m, --module[=MODULE] 模块名(admin/index/api) [default: "api"]
-o, --output[=OUTPUT] 输出文件 [default: "api.html"]
-e, --template[=TEMPLATE] 模板文件 [default: "index.html"]
-f, --force[=FORCE] 覆盖模式 [default: false]
-t, --title[=TITLE] 文档标题 [default: ""]
-a, --author[=AUTHOR] 文档作者 [default: ""]
-c, --class[=CLASS] 扩展类 (multiple values allowed)
-l, --language[=LANGUAGE] 语言 [default: "zh-cn"]
注释规则
在我们的控制器中通常分为两部分注释,一是控制器头部的注释,二是控制器方法的注释
控制器注释
| 名称 | 描述 | 示例 |
|---|---|---|
| @ApiSector | API分组名称 | (测试分组) |
| @ApiRoute | API接口URL,此@ApiRoute只是基础URL | (/api/test) |
| @ApiInternal | 忽略的控制器,表示此控制将不加入API文档 | 无 |
控制器方法注释
| 名称 | 描述 | 示例 |
|---|---|---|
| @ApiTitle | API接口的标题,为空时将自动匹配注释的文本信息 | (测试标题) |
| @ApiSummary | API接口描述 | (测试描述) |
| @ApiRoute | API接口地址,为空时将自动计算请求地址 | (/api/test/index) |
| @ApiMethod | API接口请求方法,默认为GET | (POST) |
| @ApiSector | API分组,默认按钮控制器或控制器的@ApiSector进行分组 | (测试分组) |
| @ApiParams | API请求参数,如果在@ApiRoute中有对应的{@参数名},将进行替换 | (name="id", type="integer", required=true, description="会员ID") |
| @ApiHeaders | API请求传递的Headers信息 | (name=token, type=string, required=true, description="请求的Token") |
| @ApiReturn | API返回的结果示例 | ({"code":1,"msg":"返回成功"}) |
| @ApiReturnParams | API返回的结果参数介绍 | (name="list", type="array", description="数据列表", sample="") |
| @ApiReturnHeaders | API返回的Headers信息 | (name="token", type="integer", rdescription=“介绍”, sample="123456") |
| @ApiInternal | 忽略的方法,表示此方法将不加入文档 | 无 |
常见问题
如果控制器的方法是private或protected的,则将不会生成相应的API文档
如果注释不生效,请检查注释文本是否正确.







立即咨询
