用户
 找回密码
 入住 CI 中国社区
搜索
查看: 17675|回复: 33
收起左侧

[CNote] 为CI量身定做的通过注释自动生成文档插件

  [复制链接]
发表于 2014-5-9 15:35:28 | 显示全部楼层 |阅读模式
本帖最后由 ★わ浪漫少帅 于 2014-5-9 15:52 编辑

现阶段本人已将该项目开源.
项目地址:https://github.com/ym1623/codeigniter_apidoc/
文档:http://ym1623.github.io/codeigniter_apidoc/

平时我们都需要为一些技术文档,接口文档而烦扰,该插件意在解决这些头疼的问题,支持ci所有版本,php版本>=5.0
现在暂时提供web版本的,以后会提供命令行版本的供大家使用。

使用:
PHP复制代码
 
/**
 * @author ym
 * @group(name="docgroup", description="文档模块")
 */

class Doc extends CI_Controller {
 
    function __construct() {
        parent::__construct();
        $this->load->library('phpdoc/apidoc');
    }
 
    /**
     * @ApiDescription(section="User", method="get", description="Get information about user")
     * @ApiNotice(description="登录后,客户端要保存服务器种下的cookie来维护session")
     * @ApiSuccess(value="{'firstname' : 'ym', 'lastname'  : '1623', 'lastLogin' : '2014-04-21'}")
     * @ApiExample(value="{'username' : 'ym', 'password'  : '123456'}")
     * @ApiAccess(login="true")
     * @ApiParams(name="id", type="integer", is_selected=true, description="User id")
     * @ApiParams(name="sort", type="enum[asc,desc]", description="User data")
     * @ApiReturn(name="id", type="integer", description="User id")
     * @ApiReturn(name="sort", type="enum[asc,desc]", description="sort data")
     * @ApiReturn(name="page", type="integer", description="data of page")
     * @ApiReturn(name="count", type="integer", description="data of page")
     */

    function build(){
        $this->apidoc->build_doc();
    }
 
}
复制代码

如上面的代码所示:class注释规则:
  • 在class上方必须注释group, 代表该文件所属群组
方法注释规则:
  • ApiDescription必填
    • section(生成该方法的文档标题)
    • method方法的请求类型如:get/post)
    • description (文档首页中群组下的方法描述)
  • ApiNotice可选 [注意事项])
    • descriptionstring
  • ApiSuccess可选 [返回结果])
    • valueobject
  • ApiExample可选 [请求示例])
    • valueobject
  • ApiAccess可选 [是否需要登录,默认false])
    • loginbool
  • ApiParams可选 [请求参数])
    • name(参数名称)
    • type(参数类型)
    • is_selected(是否必填)
    • description(参数描述)
  • ApiReturn可选 [返回字段说明])
    • name(参数名称)
    • type(参数类型)
    • description(参数描述)
模板完全可以自己定义,输出类型html和markdown是默认的两个模板,可以根据自己的需要定义模板



生成后的预览:
markdown
首页预览:
详情页预览:
  


HTML
首页预览:


详情页预览:
  






html格式的完全是自适应屏幕的,可以直接用手机查看
具体使用方法及说明请查看文档:http://ym1623.github.io/codeigniter_apidoc/








评分

参与人数 1威望 +5 收起 理由
。笨才~ + 5 赞一个!

查看全部评分

发表于 2018-4-23 15:43:42 | 显示全部楼层
本帖最后由 Houis 于 2018-4-23 15:45 编辑

CI3版本,报错如下:

A PHP Error was encountered
Severity: Notice

Message: Undefined variable: content

Filename: phpdoc/Apidoc.php

Line Number: 50


应该是没有做function generateTemplate里面的循环,该如何解决?
 楼主| 发表于 2014-9-26 15:42:23 | 显示全部楼层
kuhool 发表于 2014-9-16 15:49
apidoc.exe 是干嘛的

这个是用来运行命令进行编译用的,运行run.bat可以运行
 楼主| 发表于 2014-9-26 15:43:10 | 显示全部楼层
kuhool 发表于 2014-9-16 15:49
apidoc.exe 是干嘛的

你可以看我这个版块的下一篇文章就是介绍这个的
发表于 2014-5-9 17:42:24 | 显示全部楼层
很好很強大....
標記一下方便下次用
发表于 2014-5-12 11:36:09 | 显示全部楼层
不错,顶一个
发表于 2014-5-13 09:48:11 | 显示全部楼层
很好,支持下,谢谢开源
 楼主| 发表于 2014-5-13 14:49:41 | 显示全部楼层
doax1220 发表于 2014-5-13 09:48
很好,支持下,谢谢开源

谢谢支持!
发表于 2014-5-14 00:20:26 | 显示全部楼层
这个真心不错。
发表于 2014-5-15 10:27:23 | 显示全部楼层
真的用心了
 楼主| 发表于 2014-5-15 15:12:59 | 显示全部楼层

谢谢支持
 楼主| 发表于 2014-5-15 15:13:51 | 显示全部楼层

嗯,谢谢支持!如果自己能写了模板的话可以分享出来!

本版积分规则