使用 ApiGen 生成开发文档

来源:互联网 发布:c语言简易病毒 编辑:程序博客网 时间:2024/05/22 04:37

近日项目开发完了之后,需要整理文档,因为之前使用 PHPDocument 生成过,但是界面看着不爽,遂尝试了 ApiGen 生成,不得不说界面看着舒服多了。

下面说说安装和使用的方法吧。


ApiGen官网: http://www.apigen.org/

一、从 github 获取 Windows 的安装包

https://github.com/apigen/apigen/downloads

选择 Version x.x.x standalone package (zip)


二、检测、安装运行环境

1.进入PHP安装目录,按住shift键右击鼠标,点击“在此处打开命令窗口”(或使用cmd.exe进入目录),运行如下命令:

pear config-set auto_discover 1

运行的结果:

D:\php>pear config-set auto_discover 1config-set succeeded

如果运行结果如上,直接进入“三、安装ApiGen”,否则如下步骤安装pear


2.安装pear

PHP官网下载: http://pear.php.net/go-pear.phar

然后将文件拷贝到PHP的安装根目录下,按上面的方式打开命令窗口,执行命令:

php go-pear.phar

出现提示选项,则选择安装 system

<system|local> [system] : system

后面全部回车,或在提示 'all or Enter'时输入 all 回车


三、安装使用ApiGen

1.将ApiGen解压到web目录下或其他目录,然后将 apigen.neon.example 重命名为 apigen.neon 即可,这个 apigen.neon 配置文件,似乎有些不太好使,比如 更改模板 templateConfig 就没生效,自定义的模板可以改 /ApiGen/Config.php 配置文件(我将 default 改成了 bootstrap):

public function __construct(){self::$defaultConfig['templateConfig'] = $templateDir . DIRECTORY_SEPARATOR . 'templates' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'config.neon';}

如果不想将整个源码也展现出来,在 /ApiGen/Config.php 中将 sourceCode 设为 false 即可:

private static $defaultConfig = array('sourceCode' => false,'charset' => array('auto'),);

2.在目录中 按住shift键右击鼠标,点击“在此处打开命令窗口”,运行如下命令(参数见下面):

D:\www\apigen>php apigen.php --source "../site" --destination "./docs" --title "Api Document" --exclude "runtime/*"

若提示 php不是内部命令,则将 PHP 的安装目录路径添加到 系统 的 环境变量中,方法:

控制面板->系统->高级系统设置->环境变量->在“系统变量”的“Path”中添加,结尾加一个英文分号,然后再运行上面的命令。


若提示 memory 内存不足的错误,更改 php.ini 文件的内存设置,重启 Apache 再运行。


3.回车后开始编译,稍后就可以得到文档,打开 index.html 就可以查看了


附、命令参数

--source <path>需要编译成文档的 Project 目录, --source <path> 同时可以指定多个

--destination <path>  编译后存放的目录路径

--title <Name>  文档首页的标题

--exclude <path> 排除的目录(如 'views/*' 表示视图目录下的不生成文档)


其他参数见 ApiGen官网 或 https://github.com/apigen/apigen#options


参考资料

Starck Lin http://blog.starcklin.com/2013/08/apigen-php-api-document-generator/

lifire http://www.cnblogs.com/lfire/archive/2012/10/10/2718973.html

0 0