PHPackages                             wangyu/tp-doc - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. wangyu/tp-doc

ActiveLibrary[API Development](/categories/api)

wangyu/tp-doc
=============

基于ThinkPHP5.1做的API文档模型composer扩展

1551PHP

Since Jul 10Pushed 6y agoCompare

[ Source](https://github.com/china-wangyu/tp-doc)[ Packagist](https://packagist.org/packages/wangyu/tp-doc)[ RSS](/packages/wangyu-tp-doc/feed)WikiDiscussions master Synced 4d ago

READMEChangelogDependenciesVersions (1)Used By (0)

tp-doc
======

[](#tp-doc)

基于ThinkPHP5.1做的API文档模型composer扩展，支持反射文档生成 Website:

安装教程
====

[](#安装教程)

`composer` 安装
-------------

[](#composer-安装)

```
composer require wangyu/tp-doc

```

使用教程
====

[](#使用教程)

第一种：输出反射API文档
-------------

[](#第一种输出反射api文档)

### 写 `接口类` 注释,例如：`Admin` 类

[](#写-接口类-注释例如admin-类)

反射标识说明：

名称注释使用说明doc文档说明@doc('方法名称')```
 /**
 * @doc('Admin 后台管理类')
 * @package app\api\controller\cms
 */
 class Admin
 {
```

### 写`接口方法`注释,例如：`getAdminUsers` 方法

[](#写接口方法注释例如getadminusers-方法)

> **注： 本扩展输出文档参数表是 `markdown table` 做的， 因为 `markdown table` 的分隔符 `|` 与 `thinkphp 5.1`验证规则分隔符`|`冲突**

> **本扩展输出文档时采取 `#` 代替 `thinkphp5.1` 验证规则分隔符 `|`**

> 使用时：@param('id','用户ID','require|number')

> 输出时：@param('id','用户ID','require#number')

反射标识说明：

函数名称注释使用说明doc文档说明@doc('方法名称')route路由规则@route('规则','请求类型')param参数验证@param('参数名称','参数注释','参数验证规则')validate验证模型验证,需要继承 `\WangYu\validate\BaseValidate`@validate('模型名称')error错误返回@error('错误返回的`JSON`数据')success正确返回@success('正确返回的`JSON`数据')```
 /**
  * @doc('创建图书')
  * @route('','post')
  * @validate('CreateGroup')
  * @param('name','图书名称','require|graph|length:1,50')
  * @param('img','图书img','require|graph|length:1,16')
  * @success('{"code":200,"msg":"操作成功","data":[]}')
  * @error('{"code":400,"msg":"appSecret不能为空","data":[]}')
  * @return array
  */
 public function create(){#......}
```

### 输出API文档

[](#输出api文档)

- 命令行模式

    > 有关于怎么使用命令行模式参考下，thinkphp5.1官方文档 [点我](https://www.kancloud.cn/manual/thinkphp5_1/354146)

    - 配置application/command.php文件

    ```
