一  缘由

最近改版公司网站和app端的api,发现很多函数和方法都没写注释,搞得每次调用之前还需要看底层实现,有的方法名和功能还类似,区分不出使用哪个最优!为了避免给后人挖坑,除了将代码写得规范外,还想自动生成api文档,方便后来人!于是就研究上了phpdocumentor。今天说下它的安装以及使用。首先需要声明的是,网站的教程很多,但问题在于,按照网上的一些教程来,坑爹,老失败。于是干脆自己动手写一篇,记录下自己的经历。

二  安装

安装的环境是win10+xampp,

1      php.exe的路径是:C:\xampp\php;首先就是查看自己的php.exe目录下有无pear这个文件,好吧,我这个是没有的。那么, 将https://pear.php.net/go-pear.phar另存为go-pear.phar文件,并保存到php.exe所在路径中

2     第二步很重要,很多文章中都是说,直接进入到php的安装目录,执行命令  php go-pear.phar

问题就出在这里:报错,提示 :

PHP Warning: mkdir(): File exists in phar://C:/xampp/php/go-pear.phar/System.php on line 294

Warning: mkdir(): File exists in phar://C:/xampp/php/go-pear.phar/System.php on line 294
PHP Warning: mkdir(): No such file or directory in phar://C:/xampp/php/go-pear.phar/System.php on line 294

Warning: mkdir(): No such file or directory in phar://C:/xampp/php/go-pear.phar/System.php on line 294
Unable to create Temporary directory for processing C:\xampp\php\phpdoc\tmp.
Run this script as administrator or pick another location.

C:\xampp\php>PHP Warning: mkdir(): File exists in phar://C:/xampp/php/go-pear.phar/System.php on line 294
Could not open input file: Warning:

如图所示:

找了好久,终于找到原因了:权限不够导致的!!!需要以管理员的权限进入到dos下,我直接在C:\Windows\System32目录下,以管理员的方式进入dos中:

然后切换到刚才的目录下,执行 php go-pear.phar, 按回车默认system然后继续。后面操作均为默认。最后成功安装,查看php.exe同目录就可以看到pear这个文件了:

安装成功后,再来执行pear install phpdocumentor即可。

三 使用phpdocumentor

输入phpdoc -h 会有如下提示:

一般,用得多的几个参数解释如下:

-f 要进行分析的文件名,多个文件用逗号隔开
-d 要分析的目录,多个目录用逗号分割
-t 生成的文档的存放路径
-o 输出的文档格式,结构为输出格式:转换器名:模板目录。

例如,我这边生成doc的命令是:

phpdoc -d "C:\www\web"  -t  "C:\www\web\doc"

然后在对应的目录下去查看生成的文档即可!

phpdocumentor 安装以及使用说明的更多相关文章

  1. VirtualBox安装及使用说明和虚拟机安装XP系统图文教程

    virtualbox是一款开源的虚拟机软件,它能够支持多种操作系统的安装如:Solaris.Windows.DOS.Linux.OS/2 Warp.BSD等系统作为client操作系统,而且最新版本号 ...

  2. Sonar安装与使用说明

    我总结的Sonar安装与使用说明,需要的可以去网盘下载. 网盘地址: http://pan.baidu.com/s/199BII

  3. Nexus安装、使用说明、问题总结

    Nexus安装.使用说明.问题总结 1 . 私服简介 私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在 ...

  4. Gerrit的安装和使用说明

    Gerrit安装和使用说明 搞了几天,资料也查了不少,终于磨出来了.有什么不对的地方,大家及时提出来...,开始吧 系统 Centos6.5 x64 内存 2G 硬盘 20G 数据库 Mysql5.1 ...

  5. vue之vue-cookies安装和使用说明

    vue之vue-cookies安装和使用说明npm官方链接:https://www.npmjs.com/package/vue-cookies 安装,在对应项目根目录下执行:npm install v ...

  6. Fiddler4入门--手机抓包工具安装和使用说明

    Fiddler4入门--手机抓包工具安装和使用说明.电脑最好是笔记本连同一个wifi,这样能和手机保持统一局域网内. 很多区块链dapp项目方风控做的很差,利用fiddler抓包分析找一些漏洞,然后利 ...

  7. phpdocumentor安装和使用总结

    为了解决一校友在安装和使用phpDocumentor过程中遇到的问题,自己闲时也折腾了一下这个东西,总结见下: 一.定义: 自己刚听到这个词时还不知道这个是什么东西,干啥用的,就去百度了一下,说道: ...

  8. charles抓包的安装,使用说明以及常见问题解决(windows)

    charles抓包的安装,使用说明以及常见问题解决(windows) https://blog.csdn.net/zhangxiang_1102/article/details/77855548

  9. Kibana安装及使用说明

    Kibana安装及使用说明 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据. 官方地址:https://www. ...

随机推荐

  1. 加载静态界面----,要不要会加载cookie和页面参数

    Server.Transfer(string.Format("/shouji/StaticHtml/RobLine/{0}.html", id),true); 加cookie. S ...

  2. Linux 桌面玩家指南:16. 使用 CUDA 发挥显卡的计算性能

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  3. Android USB Headset: Device Specification

    For USB headsets to work seamlessly across the Android ecosystem, Android devices must support them ...

  4. CAS机制与自旋锁

    CAS(Compare-and-Swap),即比较并替换,java并发包中许多Atomic的类的底层原理都是CAS. 它的功能是判断内存中某个地址的值是否为预期值,如果是就改变成新值,整个过程具有原子 ...

  5. Json,Gson,Ajax基础知识

    //json 是一种轻量级的文本格式,解析简单,他也是一键值来存,数据与数据的分割是以,来分割 //{} 看到大括号就是一个对象,[]代表集合 ,基本上所有数据的交互都是以json格式来进行传递的 / ...

  6. js node.js 编写命令工具demo

    1 创建文件夹cli-demo 2 执行npm init  3 创建cli.js 文件 内容如下: //js文件变成可执行文件 #!/usr/bin/env node console.log(&quo ...

  7. 【机器学习】--主成分分析PCA降维从初识到应用

    一.前述 主成分分析(Principal Component Analysis,PCA), 是一种统计方法.通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分. ...

  8. Navicat 导出sql问题

    楼主最近碰到一个问题: 使用Navicat建立数据模型的时候使用导出sql功能导出的sql脚本放在sqlserver中执行失败,表创建成功了,但是我在Navicat中写的表注释和字段注释都没有成功, ...

  9. C#委托、事件、线程

    这是几个简单的例子,但是实际的开发中委托还还只在反射时用到过,事件的话只自己做了一次,并且还是特意去用的 ,实际上可以不用.线程的话,因为需要,所以用的会多点,这里主要是WS上的线程. 委托 在前面的 ...

  10. Sql万能分页代码

    sql数据库中常用的分页 我做了一个万能的 用的上的小伙伴拿去耍吧 go  ----万能分页代码create procedure [dbo].[sp_datapager] @pagesize int, ...