完美解决phpdoc导出文档中@package的warning及Error的错误


Posted in PHP onMay 17, 2016

今天在编写PHPDoc的导出文档的时候发现一个很郁闷的错误,虽然这个warning不是什么重要错误,但是看着总是很不爽的。于是就去网上找了很多相关的资料,可是郁闷的是不知道是我用的PHPDoc版本太新(1.4的版本),还是说很多人都没遇到这个问题,反正就是没有相关的这个资料找到,只是找到了一些从PHPDocumentor官方网倒出来的关于@package的使用注意事项,然后就只能一条一条检查,看了一个版本又一个版本,总算是被我解决了。

而且发现该方案可以解决@package之类相关的错误提示:

出现的问题:

1、no @package tag was used in a DocBlock for XXXXXXXXXXX

2、XXXXXX has no page-level DocBlock, use @package in the first DocBlock to create one

3、ERROR: XXXX can not have @package tag。。。。(具体的提示我忘记了,大题的意思是这里的文档不能使用@package标签)

出现上诉问题的主要原因是:页面级的文档块注释解析错误

页面级文档注释:

必须是文件中的第一个文档块注释,并且有@package标签

该文档快注释之后如果是紧接着一段PHP代码或是class类申明,必须用文档块注释隔开(也就是说页面级文档块注释之后不能紧接着代码片段)

比如情况:

案例一:  
 
/** 
 * 这个是一个页面级文档块注释 
 *@package haha 
 * 
 */ 
class test { 
 
} 
 
以上的情况就会出现上述2的错误信息 
解决该案例的方案是给class重新声明一个文档块注释 
 
/** 
 * 这个是一个页面级文档块注释 
 *@package haha 
 * 
 */ 
/** 
 * 我是test类 
 */ 
class test { 
 
} 
 
*********************************************** 
 
案例二: 
 
/** 
 * 这个是一个页面级文档块注释 
 */ 
 
/** 
 * 这个是一个页面级文档块注释 
 *@package haha 
 * 
 */ 
class test { 
 
} 
 
会出现如上问题中的1/2的情况。 
解决方案也是如案例一的解决方案一样 
 
*********************************************** 
案例三:  
 
/** 
 * 这个是一个页面级文档块注释 
 *@package haha 
 * 
 */ 
define('yyyy', 'hahha'); 
 
就会出现如上所说的情况3Error。 
解决方案也是如出一则: 
 
/** 
 * 这个是一个页面级文档块注释 
 *@package haha 
 */ 
/** 
 * 我是常量 
 */ 
define('yyyy', 'hahha');

如果所写的文档块正确,就不会出现@package相关的错误了。

注:

1、在注释中需要注意,任何不是/**   */类型的注释都不会被PHPDoc所解析。而且/**  */中的多行注释前面不是以*开头的注释行也不会被解析。

2、如果声明了标签却没有给出相关的标签必选项就会发出一个Error信息,比如@var 后面没有变量,@return后面没有返回类型,都将会出现Error错误。解决方式就是补充完整,或是如果没有的话就移除。

另外,提供一个命令行方式下的命令文件执行,自动执行Doc文档生成:

@Rem: 命令行格式自动导出PHPDoc文档 
@Rem: author: 肖肖 x_824@sina.com 
@echo off 
@echo ******************************************************************************* 
@echo 自动导出文档使用说明: 
@echo 需要安装命令行的PHPDOCumentor,安装方式是用pear安装pear install PhpDocumentor即可 
@echo 1、option:设置导出文档的格式,命令行格式支持四种格式:默认为第一种格式 
@echo ###1】、HTML:frames:default 
@echo ###2】、HTML:Smarty:default 
@echo ###3】、CHM:default:default 
@echo ###4】、PDF:default:default 
@echo 2、dir:需要执行导出文档的目录、 
@echo 3、outputDir: 导出的文档存放目录 
@echo 4、title:导出的文档的标题 
@echo ******************************************************************************* 
 
@set option=HTML:frames:default 
@set dir=D:\PHPAPP\test 
@set outputDir=D:\PHPAPP\doc 
@set title=PHPWindDoc 
 
@phpdoc -d %dir% -o %option% -ti %title% -t %outputDir% 
@echo 欢迎使用!导出成功 
@pause

注:该命令需要安装命令行下的PHPDocumentor包,安装方式用pear安装。

谨此!

以上这篇完美解决phpdoc导出文档中@package的warning及Error的错误就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 读取文件的正确方法
Apr 29 PHP
php 常用类整理
Dec 23 PHP
php使用pdo连接mssql server数据库实例
Dec 25 PHP
php截取html字符串及自动补全html标签的方法
Jan 15 PHP
PHP实用函数分享之去除多余的0
Feb 06 PHP
php实现图片局部打马赛克的方法
Feb 11 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
Oct 10 PHP
php自定义扩展名获取函数示例
Dec 12 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
Jan 24 PHP
PHP的微信支付接口使用方法讲解
Mar 08 PHP
YII框架实现自定义第三方扩展操作示例
Apr 26 PHP
PHP微信网页授权的配置文件操作分析
May 29 PHP
ECSHOP完美解决Deprecated: preg_replace()报错的问题
May 17 #PHP
简单理解PHP的面向对象编程方式
May 17 #PHP
WordPress中的shortcode短代码功能使用详解
May 17 #PHP
CodeIgniter生成静态页的方法
May 17 #PHP
CodeIgniter连贯操作的底层原理分析
May 17 #PHP
CI框架常用方法小结
May 17 #PHP
CodeIgniter记录错误日志的方法全面总结
May 17 #PHP
You might like
PHP类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
深入PHP数据缓存的使用说明
2013/05/10 PHP
php中数据库连接方式pdo和mysqli对比分析
2015/02/25 PHP
PHP实现的简单网络硬盘
2015/07/29 PHP
PHP中的静态变量及static静态变量使用详解
2015/11/05 PHP
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
2010/04/14 Javascript
Jquery 选中表格一列并对表格排序实现原理
2012/12/15 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
JSON.parse()和JSON.stringify()使用介绍
2014/06/20 Javascript
JavaScript中浅讲ajax图文详解
2016/11/11 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
2017/02/23 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
2017/03/25 jQuery
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
详解win7 cmd执行vue不是内部命令的解决方法
2017/07/27 Javascript
jQuery无冲突模式详解
2019/01/17 jQuery
ES6实现图片切换特效代码
2020/01/14 Javascript
Vue动态加载图片在跨域时无法显示的问题及解决方法
2020/03/10 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
Django实现组合搜索的方法示例
2018/01/23 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
2018/02/23 Python
pandas 中对特征进行硬编码和onehot编码的实现
2019/12/20 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
Pytest参数化parametrize使用代码实例
2020/02/22 Python
Django中Q查询及Q()对象 F查询及F()对象用法
2020/07/09 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
详解Python3.8+PyQt5+pyqt5-tools+Pycharm配置详细教程
2020/11/02 Python
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
Otticanet英国:最顶尖的世界名牌眼镜, 能得到打折季的价格
2019/02/10 全球购物
员工薪酬福利制度
2014/01/17 职场文书
数控专业自荐书范文
2014/03/16 职场文书
省级优秀班集体申报材料
2014/05/25 职场文书
公司周年庆活动方案
2014/08/25 职场文书
小学生心理健康活动总结
2015/05/08 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
Python之基础函数案例详解
2021/08/30 Python