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

作者:jingxian 时间:2023-10-07 10:07:49 

今天在编写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
0
投稿

猜你喜欢

  • 基于python 处理中文路径的终极解决方法

    2023-07-21 00:47:09
  • 使用python把xmind转换成excel测试用例的实现代码

    2022-12-21 06:21:34
  • Python中self用法实例详解

    2022-12-18 08:27:48
  • Python 硬币兑换问题

    2022-04-03 06:30:09
  • 基于python实现把json数据转换成Excel表格

    2021-02-20 05:22:04
  • 使SQL用户只能看到自己拥有权限的库(图文教程)

    2024-01-27 11:07:27
  • 关于JS中变量的显式申明和隐式申明

    2008-09-12 13:04:00
  • MySQL之Explain详解

    2024-01-12 21:14:55
  • python学习之基于Python的人脸识别技术学习

    2021-04-23 22:09:25
  • javascript过滤数组重复元素的实现方法

    2023-09-08 00:41:21
  • Mysql数据表中的蠕虫复制使用方法

    2024-01-24 15:06:06
  • python实现的简单抽奖系统实例

    2022-05-11 16:14:05
  • python中pyplot直方图的绘制方式

    2023-11-20 07:58:17
  •  Python错误与异常处理

    2022-10-28 01:10:33
  • SQL Server 2000中的触发器使用

    2024-01-15 15:33:34
  • Mysql外键约束的创建与删除的使用

    2024-01-24 11:32:33
  • Python ldap实现登录实例代码

    2021-03-12 21:38:55
  • 详解Google Protobuf简明教程

    2023-08-17 14:47:28
  • Oracle中SQL语句连接字符串的符号使用介绍

    2024-01-21 06:12:11
  • MAC系统中添加MYSQL开机启动的方法

    2024-01-13 01:52:53
  • asp之家 网络编程 m.aspxhome.com