Today I found a very depressing error when writing the export document of PHPDoc, although this warning is not What an important mistake, but it’s always unpleasant to watch. So I went to the Internet to find a lot of relevant information, but what was frustrating was that I didn’t know whether the version of PHPDoc I was using was too new (version 1.4), or whether many people had not encountered this problem. Anyway, there was no relevant information found. , I just found some notes on the use of @package dumped from the PHPDocumentor official website, and then I could only check them one by one, and read one version after another, and finally I solved it.
And found that this solution can solve @package related error prompts:
Problems:
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. . . . (I forgot the specific tip, the big question means that the documents here cannot use the @package tag)
The main reason for the appeal problem is: page-level document block comment parsing error
Page-level documentation comments:
must be the first docblock comment in the file and have the @package tag
If the document block comment is followed by a piece of PHP code or a class declaration, it must be separated by a document block comment (that is, the page-level document block comment cannot be followed by a code fragment)
For example:
<span style="color: #ff0000"><strong>案例一: </strong></span> <span><U>复制代码</U></span> 代码如下: /** * 这个是一个页面级文档块注释 *@package haha * */ class test { } 以上的情况就会出现上述2的错误信息 解决该案例的方案是给class重新声明一个文档块注释 <span><U>复制代码</U></span> 代码如下: /** * 这个是一个页面级文档块注释 *@package haha * */ /** * 我是test类 */ class test { } *********************************************** <span style="color: #ff0000"><strong>案例二:</strong></span> <span><U>复制代码</U></span> 代码如下: /** * 这个是一个页面级文档块注释 */ /** * 这个是一个页面级文档块注释 *@package haha * */ class test { } 会出现如上问题中的1/2的情况。 解决方案也是如案例一的解决方案一样 *********************************************** <span style="color: #ff0000"><strong>案例三: </strong></span> <span><U>复制代码</U></span> 代码如下: /** * 这个是一个页面级文档块注释 *@package haha * */ define('yyyy', 'hahha'); 就会出现如上所说的情况3Error。 解决方案也是如出一则: <span><U>复制代码</U></span> 代码如下: /** * 这个是一个页面级文档块注释 *@package haha */ /** * 我是常量 */ define('yyyy', 'hahha');
If the written documentation block is correct, there will be no @package related errors.
Note:
1. Please note that any comments that are not /** */ will not be parsed by PHPDoc. Moreover, the multi-line comments in /** */ that do not start with * will not be parsed.
2. If a tag is declared but the relevant tag required options are not given, an Error message will be issued. For example, if there is no variable after @var, and there is no return type after @return, an Error message will appear. The solution is to complete it, or remove it if it's not there.
In addition, a command file execution in command line mode is provided to automatically generate Doc documents:
@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
Note: This command requires the installation of the PHPDocumentor package under the command line. The installation method is pear installation.
Sincerely!
The above article perfectly solves the warning and error of @package in the phpdoc export document. This is all the content shared by the editor. I hope it can give you a reference, and I also hope that everyone will support Bangkejia.