PHP的学习--使用PhpDocumentor 2生成API文档
phpDocumentor 2是一个可以 分析php源代码和注释块并生成文档的程序。
基于phpdocumentor 1和javadoc启发而来,它持续创新的使用了一些新技术和支持php的新特性。
phpDocumentor 2的特点:
- 兼容php5.3,全面支持命名空间和闭包等。
- 识别支持任何tag,以及一些追加的 (比如 @link).
- 更快的处理速度。 较 phpDocumentor 1在Zend Framework 下的处理耗时有了明显的减少。
- 低内存消耗,小中大型工程的内存消耗分别低于20MB,40MB和100MB。
- 增量解析。如果你有之前运行phpdoc获得的structure.xml文件,那么小修改后重新生成文档的速度将提升80%。
- 简单就能创建模板,只需1小步和编辑3个文件。
- 兼容1代的命令行。例如 --directory, --file and --target
- 两步式处理。首先生成structure文件,你可以根据这个文件来格式化相关信息,用自己的工具来展现信息!
安装需求:
- PHP 5.3.3 or higher
- ext/iconv, http://php.net/manual/en/book.iconv.php (从PHP 5.0.0版本起,默认开启)
- ext/intl, http://php.net/manual/en/book.intl.php
- The XSL extension, http://www.php.net/manual/en/book.xsl.php (可选,只在使用xsl的模板时使用)
- Graphviz (可选,用来生成类图)
安装phpDocumentor 2
1.依赖于 pear 进行安装:
下载 pear http://pear.php.net/go-pear.phar
将 go-pear.phar 放到 PHP 目录下
执行安装命令:
php go-pear.phar
下面会执行输入 system
然后一路回车安装完毕
2.接下来安装类关系绘图用到的工具:
pear install image_graphviz
下载 http://www.graphviz.org/Download_windows.php graphviz-2.38.msi
安装后,注意查看环境变量 path 中是否已添加上该 bin 的路径,
下面很重要的一步:重启电脑,否则无法生效
3.安装 phpDocumentor
pear channel-discover pear.phpdoc.org //注册channel
pear remote-list -c phpdoc //列出可以获得的版本
pear install phpdoc/phpDocumentor //安装phpDocumentor
安装步骤完成!
提示下:
两个软件安装后的目录都在PHP 下的 pear 下面:
- php/pear/PhpDocumentor
- php/pear/Image
使用PhpDocumentor 2
下面开始生成项目文档:
在PHP根目录下:
phpdoc -d 项目绝对路径 -t 生成的文档存放的路径
例子:
phpdoc -d E:\bak\video\code -t E:\bak\video\code\doc
E:\bak\video\code 为php代码的文件夹
E:\bak\video\code\doc 为生成文档的文件夹
具体的参数如下:
project:run [-t|--target[="..."]] [-f|--filename[="..."]] [-d|--directory[="..."]] [-e|--extensions[="..."]] [-i|--ignore[="..."]] [--ignore-tags[="..."]] [--hidden] [--ignore-symlinks] [-m|--markers[="..."]] [--title[="..."]] [--force] [--validate] [--visibility[="..."]] [--defaultpackagename[="..."]] [--sourcecode] [-p|--progressbar] [--template[="..."]] [--parseprivate] [-c|--config[="..."]]
PHP的学习--使用PhpDocumentor 2生成API文档的更多相关文章
- Bullet的学习资源(用Doxygen生成API文档)
Bullet 全称 Bullet Physics Library,是著名的开源物理引擎(可用于碰撞检测.刚体模拟.可变形体模拟),这里将bullet的学习资源整理一下,希望能帮助入门者少走弯路. 看下 ...
- Spring Boot 项目学习 (四) Spring Boot整合Swagger2自动生成API文档
0 引言 在做服务端开发的时候,难免会涉及到API 接口文档的编写,可以经历过手写API 文档的过程,就会发现,一个自动生成API文档可以提高多少的效率. 以下列举几个手写API 文档的痛点: 文档需 ...
- Codeigniter项目使用phpDocumentor生成api文档
前言 运行环境: vagrant 2.2.4 virtualbox 6.0 box bento/ubuntu-16.04 (Apache 2.4.18 + Mysql 5.7.26 + PHP 5.6 ...
- ASP.NET Core 3.0 WebApi中使用Swagger生成API文档简介
参考地址,官网:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view ...
- 干掉 Postman?测试接口直接生成API文档,ApiPost真香!
实不相瞒我的收藏夹里躺着很多优质的开发工具,我有个爱好平时遇到感兴趣的开发工具都会记录下来,然后有时间在慢慢研究.前几天刚给同事分享一款非常好用的API文档工具,真的被惊艳到了,粉丝朋友们也感受一下吧 ...
- 利用sphinx为python项目生成API文档
sphinx可以根据python的注释生成可以查找的api文档,简单记录了下步骤 1:安装 pip install -U Sphinx 2:在需要生成文档的.py文件目录下执行sphinx-apido ...
- .Net魔法堂:提取注释生成API文档
一.前言 在多人协作的项目中,除了良好的代码规范外,完整的API文档也相当重要.通过文档我们快速了解系统各模块的实际接口,及其使用场景.使用示例,一定程度上降低沟通成本,和减少后期维护中知识遗失等风险 ...
- 使用bee自动生成api文档
beego中的bee工具可以方便的自动生成api文档,基于数据库字段,自动生成golang版基于beego的crud代码,方法如下: 1.进入到gopath目录的src下执行命令: bee api a ...
- 自动生成api文档
vs2010代码注释自动生成api文档 最近做了一些接口,提供其他人调用,要写个api文档,可是我想代码注释已经写了说明,能不能直接把代码注释生成api?于是找到以下方法 环境:vs2010 先下载安 ...
随机推荐
- MFC程序中使用调试宏ASSERT()、ASSERT_VALID()、VERIFY()和TRACE()的区别
其实这篇文章说的很明白了:http://dev.gameres.com/Program/Other/DebugMacro.htm 结论如下: 1.ASSERT()测试它的参数,若参数为0,则中断执行并 ...
- [Java基础]代码块及java反编译
块的作用域: 块(即复合语句)是指一对花括号括起来的若干条简单的java语句.块确定了变量的作用域.一个块可以嵌套在另一个块中.但是,在嵌套的两个块中声明同名的变量时应注意,块中变量申明在块外变量 ...
- 'MAMapKit/MAMapKit.h' file not found
1.应该是derived data没清导致的.在Window -> Organizer -> Projects,找到你这个项目,然后点下右边derived data后边的delete按钮. ...
- (转)Unity AssetBundle爬坑手记
转自:http://www.cnblogs.com/ybgame/p/3973177.html 这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对Asset ...
- Ubuntu全新安装firefox最新版本
Ubuntu默认安装firefox,但是自带的软件仓库是不会随firefox更新的,我在使用中老是提示flash插件需要激活,提示中可选的解决方式有三种 1.更新flash插件,但是跳转到adobe的 ...
- CoinPunk项目介绍
CoinPunk是一个bitcoin比特币钱夹服务web应用程序,你可以自己构建钱夹服务.开源,免费. 轻量级,高效 响应式设计 轻易创建新账户 详细的交易记录 构建于Node.js与H ...
- 深入理解openstack网络架构(2)----Basic Use Cases
原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture1 译文转自: http:// ...
- NoSQL:从关系型数据库到非关系型数据库
关系型数据库 所谓关系型数据库,,就是指采用了关系模型来组织数据的数据库. 什么是关系模型,简单说,关系模型就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织. 关系模 ...
- [MFC] 梳理一个简单的图片处理桌面软件中用到的MFC控件技巧
前言 前些天应好友之拖,帮忙设计一个简单的图像处理的小软件.朋友把核心算法封装好了,但是是用openCV类似于console的编程环境,要我在此基础上改成MFC桌面程序.下图是做成之后的效果: 我是 ...
- 使用MYSQL命令直接导入导出SQL文件
很多时候,我们的数据开发都会用到很多开发利器,比如powerdesigner, navicat等这些软件,虽然好用,但是要收费,在公司里面是禁止使用盗版软件的,怕罚款各方面的,所以我们也不敢直接在公司 ...