`
sofire
  • 浏览: 146163 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

phpdoc文档格式

阅读更多
Phpdocumentor文档的阅读笔记

把 PhpDocumentor/phpDocumentor/Converter.inc 的4209行的
$this->class_data->append('consts',array_merge(
改成了
$this->page_data->append('consts',array_merge(
不知道对不对

<?php

//----- 文档块 ----------------------------
/**
 * 以 / ** 开头的注释是一个文档块(DocBlock)
 */

function a0() {}

//----- 文档块描述细节 --------------------

// 文档块包括哪些?
/**
 * 文档块按顺序包括3个部分
 * 1. 短描述
 * 2. 长描述
 * 3. tag段
 */

function a1() {}

//比如
/**
 * 短描述
 *
 * 这是一个长描述。
 * 继续长描述。
 * 如果短描述超过3行,则会只去第一行,作为短描述。
 *
 * 另起一段:因为上面的空行
 */

function a2() {}
// <p>的例子
/**
 * 短描述
 *
 * <p>这是一个长描述。
 * 继续长描述。
 * 用p标签包围的长描述</p>
 * <p>另起一段</p>
 * <p>再另起一段</p>
 */
function a3() {}

/**
 * phpdoc 不支持html的标签,但是可以用下面的几个标签(注意加<>)
 * 
 * b -- <b> 加粗 </b>
 *
 * br -- 换行,<br>可能被某些转换器忽略 <br>
 *
 * i -- <i> 斜体 </i>
 *
 * kbd -- <kbd> 标示 键盘输入/屏幕输出 </kbd>
 *
 * ul -- 没有顺序的列表
 *
 * li -- 列表项
 *
 * ol -- 顺序列表
 *
 * p -- 如果成对使用,则表明一个段,否则只是一个字符串<p>
 * <p>这是一个段</p>
 *
 * pre -- 
 * <pre>原样输出,即使是各种标签<b>加粗</b>,相当于XML的CDATA
 * 注意输出成HTML后,会有效果
 * </pre>
 *
 * var -- 变量名
 *
 * samp -- 非php的示例
 *
 * <code> 加粗 </code>
 *
 * 不要把这些标签想成是字符串,它们应解析器的不同,而被解析成各种形式
 * 如:b标签在DocBook中是<emphasis>,p标签在PDF中是4个空格
 * 这些都在模板的options.ini文件中定义
 *
 * 要显示带前后尖括号的b标签,可以用《《XXX》》(小写尖括号), 如<<b>>
 *
 * 要用@标签,如果行的开头,则用\@,其他地方不需要加反斜杠 \
 * 如:
 *
 * <code>
 * \@return abc
 * 这是一个标签 @name
 * </code>
 */ 

function a4() {}

/**
 * 简单的列表(不允许嵌套,因为它不再简单)
 *
 * 这是一个简单的列表(以-、+、#、o)
 * - item 1
 * - item 2, this one
 *   is multi-line
 * 这是一个简单的列表(以-、+、#、o)
 * + item 1
 * + item 2
 * 这是一个简单的列表(以-、+、#、o)
 * # item 1
 * # item 2
 * 这是一个简单的列表(以-、+、#、o)
 * o item 1
 * o item 2
 * 列表结束。下面是顺序列表(以数字开头)
 * 1 ordered item 1
 * 2 ordered item 2
 * 列表结束。下面是还是顺序列表(以数字开头,并且有个点)
 * 1. ordered item 1
 * 2. ordered item 2
 */
function a5() {}

/**
 * 有嵌套的列表
 *
 * 使用ul li ol等标签创建复杂的嵌套列表
 * <ul>
 * <li>outer item 1</li>
 * <li>outer item 2, this one
 *   is multi-line</li>
 * <li>item 3 is a nested inner list
 * <ul>
 * <li>inner item 1</li>
 * <li>inner item 2</li>
 * </ul>
 * <li>outer item 4</li>
 * </ul>
 */
function a6() {}

/**
 * 在todo标签中的列表
 * @todo My Simple TODO List
 *     - item 1
 *     - item 2
 *     - item 3
 *      - item 3
 * @todo My Complex TODO List
 *     <ol>
 *       <li>item 1.0</li>
 *       <li>item 2.0</li>
 *       <li>item 3.0</li>
 *       <li>
 *         <ol>
 *           <li>item 3.1</li>
 *           <li>item 3.2</li>
 *         </ol>
 *       <li>
 *       <li>item 4.0</li>
 *     </ol>
 */
function a7() {}

//----- Tags ------------------------------------

// Tags:以@开头的标示
// 下面是常用的Tag

/**
 * 简单的描述
 *
 * 你可以任意扩展描述,成千上万行都可以
 *
 * 用 {\@link ellement} 指向一个 element
 * 比如:指向a1: {@link a1}
 * 
 * 用 {\@link url} 指向一个站点
 * 比如:{@link http://www.sina.com.cn 新浪网}
 * 
 * 用 {\@source} 显示源代码.
 * 比如:显示函数的代码:
 * {@source } 
 * 
 * 可用Tag列表:
 * type 是PHP类型:integer, array, mixed, string等
 *
 * - @abstract
 * - @access       public or private
 * - @author       作者 <author@email>
 * - @copyright    版权
 * - @deprecated   废弃
 * - @deprec       deprecated的简写
 * - @example      指向例子
 * - @exception    兼容javadoc
 * - @global       type $globalvarname
 * - @global       type 函数中的全局变量描述
 * - @ignore
 * - @internal     给高级程序员看的内部细节描述
 * - @param        type [$varname] 描述
 * - @return       type 描述
 * - @link         URL
 * - @name         procpagealias [不懂]
 * - @name         $globalvaralias
 * - @magic        兼容phpdoc.de
 * - @package      包名
 * - @see          指向其他元素的名字,如函数名,类方法等
 * - @since        一个版本号或日期
 * - @static
 * - @staticvar    type 函数中的静态变量的描述
 * - @subpackage   子包
 * - @throws       兼容Javadoc
 * - @todo         待办列表,兼容phpdoc.de
 * - @var          type    类变量的类型
 * - @version      版本
 */
function if_there_is_an_inline_source_tag_this_must_be_a_function()
{
// ...
}


//----- 可以文档的源代码元素 ------------------------------------

//-- 包 

/*
 * Phpdoc划分包的逻辑:
 * 函数、常量、全局变量属于包
 * 方法、类变量属于类
 * 包可以包含多个类
 *
 * 一个文件中不要包含多个包
 */

//--- 程序文件级 --------------------
/*
 * 文件的第一个块就是 文件级的文档块(page-level Docblock)
 * 或者包含@package标签
 * 它可以有这些元素:
 *   标准标签
 *   @package
 *   @subpackage
 *
 */

//--- Include/Require 语句 ----------
/*
 * 它可以有这些元素:
 *   标准标签
 */ 

//--- define 语句 -------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @name
 */ 

//--- function 声明 -------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @global
 *   @param
 *   @return
 *   @staticvar
 *   inline {@source}
 */ 

//--- 全局变量 ------------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @name
 */ 

//--- class 声明 -------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @package
 *   @subpackage
 *   @static
 */ 

//--- class 变量 -------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @var
 */ 

//--- class 变量 -------------------
/*
 * 它可以有这些元素:
 *   标准标签
 *   @global
 *   @param
 *   @return
 *   @static
 *   @staticvar
 *   inline {@source}
 */ 

/*
 * 标准文档标签
 * 常用的:
 *   @author
 *   @copyright
 *   @version
 *   @since
 *   @link
 *   @see
 * 其他:
 *   @tutorial
 *   @example
 *   @access
 *   @deprecated
 *   @ignore
 *   @internal
 *   inline {@internal}}
 *   inline {@inheritdoc}
 *   inline {@link}
 */

/*
 * 文档标签的继承关系
 *
 * Class子类可以继承父类的文档,几个简单的规则:
 *
 * @author, @version, @copyright 自动继承,除非显示指明
 * @package and @subpackage 也会继承,但是建议显示申明,以避免名字冲突
 * 如果没有简单描述,则会继承
 * 如果没有长简单描述,则会继承
 * 如果有长描述,想继承父类的描述,则使用inline标签 {@inheritdoc}
 */

//----- 命令行参数说明 ------------------------------------
// phpdoc -h 查看帮助, 参数如下:
//
/* -c --config 载入配置文件,如:-c defualt ;载入default.ini文件
 * -cp --converterparams 动态扩展转换器的参数,多个值用逗号分割
 * -ct --customtags 自定义tag,多个值用逗号分割;如:-ct mgtag,yourtag  => @mytag @yourtag
 * -d --directory 指定要解析的目录
 * -dc --defaultcategoryname 指定默认分类名,默认值为:defaul
 * -dh --hidden 相当于-dh on,让phpdoc解析以.开头的隐藏文件和目录
 * -dn --defaultpackagename 指定默认包名,默认是:default
 * -ed --examplesdir 例子文件寻找路径,如:-ed /full/path/to/example
 * -f --filename 要解析的源文件名,用,分割,可以使用 * ?
 * -i --ignore 不解析的文件名或目录,用,分割,可以使用 * ? ;
 *    - -i  忽略 /path/to/here/tests/* 和 /path/tests/*
 *    - -i *.inc 忽略所有的 .inc 文件 *
 *    - -i *path/to/* 忽略 /path/path/to/my/* 和 /path/to/*
 *    - -i *test* 忽略 /path/tests/* 和 /path/here/my_test.php
 * -is --ignoresymlinks 忽略任何链接文件,这个只在Linux/Unix下有效,因为Win下没有链接文件
 * -it --ignore-tags 忽略某些tag;通常用于创建不同版本的文档;如给普通用户的文档,就不需要@todo标签
 *    忽略inline标签,加上大括号,如--ignore-tags {@internal}
 *    参数是完整名字,如-it @todo,  -it todo 是错误的写法
 * -j --javadocdesc 使用javadoc兼容标签
 * -o --output 指定要使用的转换器和模板;默认可选:
 *   HTML:frames:* - 输出带框架的HTML页面
 *     HTML:frames:default - 类Javadoc模板,没有太多格式
 *     HTML:frames:earthli - Marco von Ballmoos写的模板,非常漂亮
 *     HTML:frames:l0l33t - 非常漂亮的模板
 *     HTML:frames:phpdoc.de - 类phpdoc.de's PHPDoc
 *     HTML:frames:phphtmllib - 非常好的用户发行模板
 *      以上模板都有javascript增强版本:HTML:frames:DOM/name 其中name表示 default, l0l33t, phpdoc.de, 等等
 *     HTML:frames:phpedit - 基于PHPEdit帮助生成器
 *
 *   HTML:Smarty:* - 输出不带框架的HTML
 *     HTML:Smarty:default - 用css控制页面布局的模板
 *     HTML:Smarty:HandS - Layout is based on PHP, but more refined, with logo image
 *     HTML:Smarty:PHP - Layout is identical to the PHP website
 *
 *   CHM:default:* - 输出成CHM格式,需要用Windows的Help软件编译
 *     CHM:default:default - 基于HTML:frames:l0l33t
 *
 *   PDF:default:* - 输出成PDF文档
 *     PDF:default:default - 标准格式
 *
 *   XML:DocBook:* - 输出成XML--DocBook格式
 *     XML:DocBook/peardoc2:default - pear.php.net(第2版)
 *
 * -p --pear Parse a PEAR-style repository (package is directory, _members are @access private) on/off default off 
 * -po --packageoutput output documentation only for selected packages. Use a comma-delimited list 
 * -pp --parseprivate 开启;默认不显示@access private的文档
 * -q --quiet 关闭多余信息;用法:-q on --不显示  -q off --显示,默认值
 * -ric --readmeinstallchangelog Specify custom filenames to parse like README, INSTALL or CHANGELOG files 
 * -s --sourcecode generate highlighted sourcecode for every parsed file (PHP 4.3.0+ only) on/off default off 
 * -t --target 要输出的路径
 * -ti --title 文档的标题
 * -tb --templatebase 指定自己的模板目录
 * -ue --undocumentedelements 为没有文档的元素 产生警告; 用法:-ue on  -ue off (默认值)
 */

/*
 * phpdoc -t /path/to/output -d path/to/directory1,/another/path,/third/path 
 *   -f /path/to/anotherfile.php -i *test.php,tests/ -pp on -ti My Title -o HTML:frames:phpedit
 *
 * phpdoc -c myconfig
 */

?>



分享到:
评论

相关推荐

    PHP文档规范及phpDoc指南-共享版

    PHPDoc是PHP编程中一种推荐的文档注释格式,它基于JavaDoc,用于描述类、方法、变量等元素的用途、参数、返回值等信息。phpDocumentor是一款强大的工具,它可以解析这些注释并生成HTML格式的文档,使得开发者可以更...

    使用phpdoc/phpDocumentor来生成api文档

    **PHPDoc和phpDocumentor:生成API文档的强大工具** 在PHP开发中,API文档是至关重要的,它为团队成员、贡献者以及外部开发者提供了清晰的代码接口说明,帮助他们理解和使用你的代码库。PHPDoc和phpDocumentor是两...

    PHPWord,可以自动生成doc文档

    4. **读取与写入**:除了生成doc文档,PHPWord还可以读取现有的.doc或.docx文件,并进行修改或合并。这在处理用户上传的文档时非常有用。 5. **导出格式多样化**:除了.doc,PHPWord还能将文档导出为其他格式,如...

    doc转html的php程序

    简单的doc文件转成html文件格式 但是有个别doc文档转不了 docx的也转不了

    PHP学习PHPDOC1.docx

    PHPDoc 是一种专门为 PHP 语言设计的文档注释标准,它借鉴了 Javadoc 的概念,旨在为 PHP 代码提供结构化的、机器可读的注释,以便于生成 API 文档,同时也支持集成开发环境(IDEs)进行更智能的代码提示和错误检查...

    Laravel开发-addon-phpdoc

    在Laravel中开发addon-phpdoc,意味着我们要扩展Laravel的功能,使其能够处理phpDoc生成的XML文件,并将其转化为用户友好的文档格式。 phpDoc的工作原理是通过扫描PHP源代码,解析函数、类、方法和常量的注释,这些...

    各种文件格式

    **文档文件格式** - DOC:微软Office Word文档格式,用于存储文本、图片和其他格式的文档。 - XLS:微软Office Excel电子表格文档格式,用于存储数据表。 - PDF:便携式文档格式,用于跨平台显示和打印文档,保持原...

    phpdoc-vuepress::artist_palette:以漂亮的VuePress格式生成PHP API文档的模板

    PHPDoc-VuePress 用于以漂亮的VuePress格式生成PHP API文档的模板。 该软件包提供了一个phpDocumentor模板,用于生成代码的API文档,以将其集成到美观的项目中。 仅使用默认主题VuePress进行了测试。产品特点此模板...

    基于PHP的PESCMS DOC文档管理系统 php版.zip

    - **上传与下载**:支持多种文件格式的上传和下载。 - **权限控制**:对敏感文档设置访问密码或仅允许特定用户查看。 - **日志追踪**:记录用户操作,便于审计和问题排查。 - **模板管理**:预设文档模板,提高工作...

    phpdoc-md:以降价格式生成文档

    phpdoc-md通过位于项目根目录中的单个(php格式) .phpdoc-md文件进行配置。 .phpdoc-md文件的示例: &lt;?php return (object)[ 'rootNamespace' =&gt; 'Clean\PhpDocMd\Example', 'destDirectory' =&gt; 'docs',

    Laravel开发-addon-phpdoc .zip

    虽然phpdoc提供了源代码级别的文档,但为了更全面地介绍你的addon,你还需要编写一份独立的README文件。这个文件应该包含安装步骤、示例用法、配置选项以及任何需要注意的细节。 7. 测试与维护 为你的addon编写...

    php自动生成带图片附件的doc文档类

    原理解释:doc文件保存插入图片的原理是新增一个 .files文件夹(用word程序打开修改doc文档后,添加的ole文件也是自动会将资源保存在.files文件夹中。) 注意:强烈建议路径文件夹表示采用linux系的/而非windows系的\...

    phpdoc:维护部落PHP文档

    `phpdoc`就是这样一款工具,它专门用于生成PHP项目的API文档,以Markdown、HTML或其他格式呈现,使得代码更易读、更易于维护。本文将深入探讨`phpdoc`的使用方法、功能特性以及如何为PHP项目构建高质量的文档。 1. ...

    PHP函数.doc

    2. `unpack()`:这个函数可以将一个二进制字符串解包成多个变量,根据提供的格式字符串进行解析。 3. `uniqid()`:生成一个基于当前时间(以微秒计)的唯一标识符,常用于创建唯一ID或防止重复数据。 4. `time_...

    可以上传多种格式的文件和图片

    文件格式是指文件的组织结构和编码方式,常见的有.doc(Word文档)、.pdf(PDF文档)、.txt(纯文本文件)、.jpg(JPEG图像)、.png(PNG图像)等。每种格式都有其特点和适用场景,例如,.doc适合编辑和格式化文本,...

    介绍个好用的PHP库,功能是将HTML转为PDF,将WORD DOC转换为PDF,将PDF转换为一堆JP.zip

    其次,该库支持将Word DOC文档转换为PDF。这对于那些需要处理用户上传的DOC文件,或者需要将内部文档格式统一的场景非常实用。转换过程中,库可能利用了诸如PHPWord或者PHPDOCX这样的库,这些库能够解析DOC文件的...

    PESCMS DOC文档管理系统 v1.4.16.zip

    PESCMS DOC文档管理系统 v1.4.16 更新日志 1.优化搜索功能 2.修正了删除文档目录错误的问题。 3.新建文档添加文档排序值输入框。 4.同步系统升级的业务逻辑。 5.同步Core核心逻辑。 PESCMS DOC文档管理系统...

    文档工具_-_多种文件格式转换处理的工具软件.zip

    "文档工具_-_多种文件格式转换处理的工具软件.zip" 提供的是一款专门用于处理多种文件格式转换的PHP源码,这对于开发者来说是非常有价值的资源。PHP是一种广泛使用的服务器端脚本语言,特别是在Web开发领域,它能...

    开源文档管理系统LogicalDOC v6.4.1

    提供 .NET和PHP版本,附带论坛和WebDAV的接口,支持文档导入导出到ZIP文件和邮箱文件。 文件夹可分层次组织,搜索使用集成搜索引擎,或通过标签浏览。通过插件体系可方便进行功能扩展。除了象关键字钻取和版本控制外...

    PESCMS DOC文档管理系统 1.4.14.zip

    PESCMS DOC是一款基于PESCMS...PESCMS DOC文档管理系统 1.4.14 更新日志:2018-07-10开启UE的模板功能,现在编写文档可以更加便捷;模板编辑功能位于:管理-UE格式模板;优化上传组件;优化智能表单模板;优化设置模板。

Global site tag (gtag.js) - Google Analytics