`
逍遥虾
  • 浏览: 13324 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于phpdoc导出文档中@package的warning及Error错误

    博客分类:
  • php
阅读更多

     今天在编写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类申明,必须用文档块注释隔开(也就是说页面级文档块注释之后不能紧接着代码片段)

 

比如情况:

 

案例一:
[code]
/**
 * 这个是一个页面级文档块注释
 *@package haha
 *
 */
class test {

}
[/code]
以上的情况就会出现上述2的错误信息
解决该案例的方案是给class重新声明一个文档块注释
[code]
/**
 * 这个是一个页面级文档块注释
 *@package haha
 *
 */
/**
 * 我是test类
 */
class test {

}
[/code]
***********************************************

案例二:
[code]
/**
 * 这个是一个页面级文档块注释
 */

/**
 * 这个是一个页面级文档块注释
 *@package haha
 *
 */
class test {

}
[/code]
会出现如上问题中的1/2的情况。
解决方案也是如案例一的解决方案一样

***********************************************
案例三:
[code]
/**
 * 这个是一个页面级文档块注释
 *@package haha
 *
 */
define('yyyy', 'hahha');
[/code]
就会出现如上所说的情况3Error。
解决方案也是如出一则:
[code]
/**
 * 这个是一个页面级文档块注释
 *@package haha
 */
/**
 *  我是常量
 */
define('yyyy', 'hahha');
[/code]
 

 

    如果所写的文档块正确,就不会出现@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安装。

 

 

谨此!

 

0
1
分享到:
评论

相关推荐

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

    下面小编就为大家带来一篇完美解决phpdoc导出文档中@package的warning及Error的错误。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    c#模板导出word文档

    在C#编程环境中,利用Aspose.Words库可以方便地实现根据预设模板导出Word文档的功能。Aspose.Words是一款强大的文档处理组件,它允许开发者在不依赖Microsoft Office的情况下,进行Word文档的创建、编辑、格式化以及...

    swagger文档离线导出,word、pdf、html

    Swagger 是一个广泛使用的 API 设计和文档工具,它允许开发者以结构化的方式定义 RESTful API,使得服务接口清晰易懂,同时提供了一种交互式的 API 文档系统,方便开发者测试和理解 API 功能。Swagger 文档离线导出...

    Java使用POI导出Word文档

    Java使用Apache POI库导出Word文档是一种常见的技术实践,特别是在企业级应用中,用于生成报告、合同或者自定义的数据输出。Apache POI是Apache软件基金会的一个开源项目,它提供了处理Microsoft Office格式(如Word...

    SQL SERVER自动导出Word数据库文档

    在SQL SERVER环境中,有时我们需要将数据库的信息以报告的形式呈现,比如导出为Word文档,方便阅读和分享。"SQL SERVER自动导出Word数据库文档"这一功能就满足了这样的需求。这个功能主要应用于SQL SERVER 2000、...

    thinkphp生成word文档并导出

    在IT行业中,生成和导出文档是常见的需求,特别是在企业级应用中,如报表生成、数据分析等。ThinkPHP是一款流行的PHP框架,它提供了强大的功能来处理这类任务。本篇文章将详细解析如何使用ThinkPHP框架生成Word文档...

    yapi中加入doc导出组件的ykit.config.js配置

    由于doc插件编译的问题,所有质量准备了已经修改好的的ykit.config.js配置,只需要放到yapi部署项目的vendors目录下即可,可以对源的配置文件进行备份,亦可以通过我的博客自己配置...也可以去GitHub上查看大声的解决...

    C# 用spire导出word

    在本案例中,我们将探讨如何使用Spire库在WinForm应用中实现Word文档的导出功能。Spire是一个功能强大的组件集,它为开发人员提供了在C#中处理Microsoft Office文档的能力,无需依赖Office安装。 首先,为了能够...

    从PB中导出数据到WORD文件中

    标题中的“从PB中导出数据到WORD文件中”指的是使用PowerBuilder(PB)这款强大的数据库开发工具将数据导出并生成Word文档的过程。在实际的业务应用中,这种功能常用于报告生成、数据分析报告或者自定义文档制作等...

    powerdesigner导出数据库设计文档手册.doc

    - 在“Generate Reports”对话框中进行相关配置(如报告样式、布局等),并在“Filename”栏设置导出文件的保存位置及文件名。 - 最后点击“OK”按钮开始导出操作。 **3. 查看报告** - 成功导出后,系统会询问...

    ASP.NET导出DOC文档

    ASP.NET导出word文档的后台代码

    spire.doc API文档

    spire.doc API文档 spire.doc API文档spire.doc API文档

    使用asp.net导出word文档

    filename=exam.doc"`,以便于浏览器将导出的文件保存为名为 "exam.doc" 的 Word 文档。 将数据写入 Response 在设置好 HttpResponse 对象和文件名和类型之后,我们可以将数据写入 Response 对象中。在代码中,我们...

    java导出文档

    ### Java导出文档知识点 #### 一、导出Excel文档概述 在Java中,导出Excel文档是一项常见的需求,尤其在处理大量数据时。本文档将详细介绍如何利用Apache POI库来实现这一功能。Apache POI是Apache软件基金会的...

    Confluence 批量导出doc的shell脚本

    Confluence 批量导出doc的shell脚本,方便快捷,不用再自己去粘贴复制文档!

    数据库表结构导出word文档.zip

    数据库表结构导出到Word文档是一项常见的需求,特别是在数据库设计、文档共享和团队协作中。这个压缩包"数据库表结构导出word文档.zip"显然提供了一个工具或脚本,能够将MySQL数据库的表结构转换为Word文档格式。...

    java导出图片到word文档

    在Java编程中,将图片导出到Word文档是一项常见的任务,尤其在自动化报告生成或数据可视化等场景下。本文将详细介绍如何使用Java实现这一功能,包括必要的库、步骤以及可能出现的问题。 首先,我们需要一个能够处理...

    Unity导出doc文档所需的NPOI

    在Unity中,我们有时需要将数据或报告导出为常见的办公文档格式,如.doc(Microsoft Word文档)。NPOI是一个开源库,主要用于处理Microsoft Office文档,包括Excel和Word。在Unity中使用NPOI可以实现程序自动化生成...

    RenderDocV1.x批量导出纹理版

    RenderDoc是一款强大的图形调试工具,尤其在游戏开发和图形编程领域中被广泛应用。它提供了详细的帧捕获和分析功能,帮助开发者深入理解渲染管线的工作原理,查找并修复图像错误。然而,原生的RenderDoc在导出纹理时...

    Spire.PDF 帮助文档Spire.DOC 帮助文档

    在提供的帮助文档`Spire.Pdf.chm`和`Spire.Doc.chm`中,开发者可以找到详细的API参考、示例代码和教程,以帮助他们更好地理解和使用这两个库。这些文档通常会涵盖每个类、方法、属性和事件的详细说明,包括它们的...

Global site tag (gtag.js) - Google Analytics