PHPDocumentor当前版本是phpDocumentor-2.8.5.tgz

关于PHPDocumentor有什么用,还有其历史,我就不介绍了,直接进入正题。
老版本的叫PHPDoc,从1.0开始,2017/2月的最新版本是:1.4.4(PHPDoc已经停止发布了直接新版本走起吧,新版本支持更好)
新版本叫PHPDocumentor,从2.0本版本开始,2017/2月的最新版本是:2.8.5
2.0的官方网站:https://phpdoc.org

一 安装phpDocumentor
安装phpDocumentor有三种方法:
a.使用pear
加入phpdoc的频道
$ pear channel-discover pear.phpdoc.org

安装phpdoc
$ pear install phpdoc/phpDocumentor

这种方法受限于pear,windows下能正常下载,但是会无法解压安装包。
报错:ERROR: unable to unpack c:/*****

b.直接使用phpDocumentor.phar文件执行phpDoc接口文档生成
下载phpDocumentor.phar
http://www.phpdoc.org/phpDocumentor.phar.

下载后进入到phpDocumentor.phar文件所在目录,直接执行接口文档生成命令,
即可以用php phpDocumentor.phar后面加上下面第二部分的参数,(个人理解是免安装)
直接使用PHPDocumentor生成接口文档。
php phpDocumentor.phar -d . -t docs/api

c.使用Composer
Composer官网https://getcomposer.org

安装Composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

指定配置项安装
指定安装路径
php composer-setup.php --install-dir=bin

指定文件名
php composer-setup.php --filename=composer

指定版本
php composer-setup.php --version=1.0.0-alpha8

安装phpdoc
$ composer require "phpdocumentor/phpdocumentor:2.*"

小结:
三种方法都试下来:
b方法免安装最靠谱,但是使用的时候要进入到phpDocumentor.phar文件所在目录(或者干脆把此文件放到环境变量目录下),然后把下文中的phpdoc命令换成php phpDocumentor.phar;
a方法能下载,但是windows下会报ERROR: unable to unpack c:/*****的安装错误;
c方法莫名其妙,明明安装成功了,但是使用phpdoc命令的时候,告诉我该命令不存在。。。难道是windows下环境变量的问题?以后再研究了。

二 设置,查询,生成模板
a.查看模板列表
能查询出当前有哪些可用模板
$ phpdoc template:list

b.按指定模板生成文档
$ phpdoc -d "./src" -t "./docs/api" --template="checkstyle"
一次生成不同模板的文档
$ phpdoc -d "./src" -t "./docs/api" --template="checkstyle,clean"
生成自定义模板的文件
$ phpdoc -d "./src" -t "./docs/api" --template="data/templates/my_template"

c.开始生成接口文档
一共有三种写法,作用都一样,如下:
$ phpdoc -d|-f <PATH> -t <PATH> [parameters]
$ phpdoc run -d|-f <PATH> -t <PATH> [parameters]
$ phpdoc project:run -d|-f <PATH> -t <PATH> [parameters]

-d后面跟着需要编译的接口目录
-f后面跟着需要编译的接口文件
-d和-f二选一
-t是指把接口文档生成到什么位置
[parameters]是后面添加的其他参数
–encoding 编码方式
–title[=”...”]文档的标题
–force忽略异常继续执行
--template=""选择需要编译的模板

还有很多不常用,详细请看官方文档:
https://phpdoc.org/docs/latest/references/commands/project_run.html#usage

例子:
phpdoc(或php phpDocumentor.phar) -d "E:\PHPDoc\Controller" -t "E:\PHPDoc" --template="responsive-twig"

*****注意:一定要用双引号*****

小结:
生成的文档文件直接用浏览器打开;
或者
把目标目录(上例中-t后面的E:\PHPDoc)内的新生成文件拷贝到服务器目录下,访问服务器打开。

三 注释填写规范

标记名字 标记使用范围    标记描述
@api methods 声明元素适合第三方消费。
@ahthor any 文档的相关元素的作者。
@category file,class 组合一系列包。
@copyright any 记录相关元素的版权信息。
@deprecated any 表明相关的元素是不可以在未来的版本中删除。
@example any 显示指定的示例文件的代码,或可选地,只是其中的一部分。
@filesource file 包含用于输出的当前文件的源。
@global variable 通知一个全局变量或使用phpDocumentor。
@ignore any 告诉phpDocumentor,伴生元素并不包含在文档中。
@internal any 表示关联元素是此应用程序或库的内部,并在默认情况下将其隐藏。
@license any 指示关联元素适用于哪个许可证。
@link any 表示关联元素与网站页之间的关系。
@method class 允许一个类知道这“神奇”的方法调用。
@package file,class 将相关的元素为一个逻辑分组或细分。
@param method,fucntion 记录函数或方法的单个参数。
@property class 允许类知道哪些“魔法”属性存在。
@property-read class 允许类知道哪些“魔法”属性是只读的。
@property-writer class 允许类知道哪些“魔术”属性是目前只写。
@return method,function 记录函数或方法的返回值。
@see any 指示从关联元素到网站或其他元素的引用。
@since any 指示关联元素在哪个版本可用。
@source any,except file 显示关联元素的源代码。
@subpackage file,class 将相关的元素为一个逻辑分组或细分。
@throws method,function 指示关联的元素是否会引发特定类型的异常。
@todo any 指示是否应在关联元素上执行任何开发活动。
@uses any 表示引用(和从)单个关联元素。
@var properties
@version any 表示结构元素的当前版本。

小结:
最常用的就是@return ,把想显示的注释内容放到这个标记下面,
那么@return下面的所有无标记注释都会被显示出来。

PHPDocumentor2.8.5 安装,使用及快速上手的更多相关文章

  1. 【图文详解】scrapy安装与真的快速上手——爬取豆瓣9分榜单

    写在开头 现在scrapy的安装教程都明显过时了,随便一搜都是要你安装一大堆的依赖,什么装python(如果别人连python都没装,为什么要学scrapy….)wisted, zope interf ...

  2. Spark 安装部署与快速上手

    Spark 介绍 核心概念 Spark 是 UC Berkeley AMP lab 开发的一个集群计算的框架,类似于 Hadoop,但有很多的区别. 最大的优化是让计算任务的中间结果可以存储在内存中, ...

  3. 快速上手Ubuntu之安装篇——安装win7,Ubuntu16.04双系统【转】

    本文转载自:http://blog.csdn.net/qq_28205153/article/details/52203512 Linux可以说是开发者的系统,对于开发者来说,Linux发行版不仅为我 ...

  4. Elastic Search快速上手(1):简介及安装配置

    前言 最近开始尝试学习Elastic Search,因此决定做一些简单的整理,以供后续参考,快速上手使用ES. 简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多 ...

  5. 【学习总结】快速上手Linux玩转典型应用-第7章-WebServer安装和配置讲解

    课程目录链接 快速上手Linux玩转典型应用-目录 目录 1. Apache的安装 2. Apache的虚拟主机配置及伪静态操作 3. Nginx的基本操作 4. Nginx伪静态的实现 5. 实例演 ...

  6. 【学习总结】快速上手Linux玩转典型应用-第3章-CentOS的安装

    课程目录链接 快速上手Linux玩转典型应用-目录 目录 1. 虚拟机是什么 2. 在虚拟机中安装CentOS 3. 云服务器介绍 ================================== ...

  7. 01_MySQL从下载—>安装—>到快速上手

    一.MySQL下载 二.MySQL安装 三.MySQL几条简单命令快速上手(增删改查) 一.MySQL下载与安装 下载地址:https://dev.mysql.com/downloads/mysql/ ...

  8. 【Python五篇慢慢弹】快速上手学python

    快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...

  9. [译]:Xamarin.Android开发入门——Hello,Android快速上手

    返回索引目录 原文链接:Hello, Android_Quickstart. 译文链接:Xamarin.Android开发入门--Hello,Android快速上手 本部分介绍利用Xamarin开发A ...

  10. Git版本控制Windows版快速上手

    说到版本控制,之前用过VSS,SVN,Git接触不久,感觉用着还行.写篇博文给大家分享一下使用Git的小经验,让大家对Git快速上手. 说白了Git就是一个控制版本的工具,其实没想象中的那么复杂,咱在 ...

随机推荐

  1. Unity 随机数与随机种子

    随机数几乎应用于游戏开发的方方面面,例如,随机生成的地图,迷宫,怪物属性等,在Unity中,使用随机数非常方便: // // 摘要: // Return a random integer number ...

  2. Flutter Weekly Issue 47

    教程 开辟 Dart 到 Native 的超级通道,饿了么跨平台的最佳实践 当永恒的软键盘问题遇到Flutter 插件 fijkplayer ijkplayer for flutter. ijkpla ...

  3. BJDCTF

    python3的模板注入 非常简单...就是直接执行命令就行..虽然过滤了flag,但是拼接下就好了.... payload: http://fd5883ee-b8e2-4bf1-88af-33936 ...

  4. BNP Paribas Cardif Claims Management

    2月20日: 查看任务介绍,二分类问题,评价标准logloss 下载数据 2月21~27日: 查看数据组成,标识分类变量.离散变量.连续变量. 发现连续数据有大量非随机空缺(占总量一半),主要集中在v ...

  5. HTTP 与 HTTPS 的区别以及 HTTPS 建立连接的过程

    HTTP 与 HTTPS 区别 HTTP 明文传输,数据都是未加密的,安全性较差,HTTPS(SSL+HTTP) 数据传输过程是加密的,安全性较好. 使用 HTTPS 协议需要到 CA(Certifi ...

  6. C语言经典练习题:水仙花数

    废话不说直接进入正题:传说中的水仙花数就是一个三位数的各个位数的三次方之和就是这个数本身例如153=1*1*1+5*5*5+3*3*3. 好,开始解题:首先,题中已经说了水仙花数是一个三位数,也就是说 ...

  7. hdu4107Gangster 线段树

    题目链接:http://icpc.njust.edu.cn/Problem/Hdu/4107/ 题目给定一个初始值都是零的序列,操作只有一种,就是给一个区间加上一个数,但是当一个数大于等于给定的P的时 ...

  8. SpringBoot2 整合 Swagger2

    SpringBoot2 整合 Swagger2 SpringBoot整合三板斧 第一步.引入pom <dependency> <groupId>com.spring4all&l ...

  9. angularJS表达式和指令

    主要是描述angularJS如何扩展html的:(模型后面会涉及) 例子1:通过指令来扩展html <body ng-app="myapp">  <!--  ng ...

  10. wr720n v4 折腾笔记(三):网络配置与扩充USB

    0x01 前言 网络配置比较简单,但是USB拓展就麻烦许多了,这里由于overlay的内存分配问题导致软件安装失败,这里找到了一种方法就是直接从uboot刷入南浦月大神的wr720n的openwrt固 ...