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. git删除已经提交的包含敏感信息的文件(还没提交到远程仓库)

    写好的代码已经提交了(但还没push到github),发现某个文件里包含密码.如果push的话,密码可就被公开了.如果在代码里改掉密码,再commit一次,也不行,历史提交记录还是会上传到github ...

  2. Day1T1仓鼠的石子游戏——博弈论

    打比赛的时候还没学博弈论,打完下来花了半个多小时学完,发现这题就是一道\(SG\)函数 其实当时差一点就\(YY\)出了答案,但是后面太难想,所以没整出来 机房大佬们都说自己没学博弈论,但是都AC 题 ...

  3. Dubbo之服务暴露

    前言 本文 Dubbo 使用版本2.7.5 Dubbo 通过使用dubbo:service配置或@service在解析完配置后进行服务暴露,供服务消费者消费. Dubbo 的服务暴露有两种: 远程暴露 ...

  4. java学习笔记(1)——有关接口

    接口: interface intf0{ public void doSomething(); } interface intf1{ public void doAnything(); } class ...

  5. oracle中plsql练习题----查询姓为“SMITH”的员工信息,并输出其员工号、姓名、工资、部门号。 – –如果该员工不存在,则插入一条新记录,员工号为2012,员工姓名为“Smith”,工资为7500元,入职日期为“2002年3月5日”,部门号为50。 – –如果存在多个名“Smith”的员工,则输出所有名为“Smith”的员工号、姓名、工资、入职日期、部门号L。

    一.思路:首先判断这个查询的是emp表,需要接收值,声明一个rowtype类型接收数据即可,第二是,存在exception,需要处理,exception中有两种异常,分别处理即可,分别输出即可. 二. ...

  6. 初始Django—Hello world

    1. 准备环境 > python -V Python > pip -V pip from c:\python3\lib\site-packages\pip (python 3.7) > ...

  7. setTimeout和setImmediate到底谁先执行,本文让你彻底理解Event Loop

    笔者以前面试的时候经常遇到写一堆setTimeout,setImmediate来问哪个先执行.本文主要就是来讲这个问题的,但是不是简单的讲讲哪个先,哪个后.笼统的知道setImmediate比setT ...

  8. Kubernetes中Pod健康检查

    目录 1.何为健康检查 2.探针分类 2.1.LivenessProbe探针(存活性探测) 2.2.ReadinessProbe探针(就绪型探测) 3.探针实现方法 3.1.Container Exe ...

  9. 贵州省网络安全知识竞赛团体赛Writeup-phpweb部分

    0x01 混淆后门#conn.php 首先还是拖到D盾扫描 打开conn.php发现底部有那么一串代码: 对这个代码进行分析 首先可以对几个比较简单的变量输出看一下 $s输出内容为create_fun ...

  10. JDK下载、安装、卸载

    学习java的朋友,第一课就是安装JDK,如果你连他都不会安装,那就非常尴尬,如果面试的时候如果问到这个问题,就Game over了,下面来看看怎么弄吧! 了解JDK JDK的全称是JavaSE De ...