注释标签在代码注释中的作用非常大,但是可能很多同学在平常开发中会忽略这些标签的作用,所以我这边特地整理一些常用的注释标记,通过图文展现形式,希望能帮助你能更好理解每个注释标签的作用.
项目工程地址: https://github.com/yinggaozhen/doc-demo/tree/master/php
_
@deprecated
: 被此标记的函数或者成员方法表示下个版本将会被废弃,告知适用方不再推荐使用此方法.
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/deprecated
@deprecated [<version>] [<description>]
@deprecated
可以填写一个版本号,版本号的规则同 @version
@see
来表示被代替的方法_
@inheritdoc
: 文档继承,会继承父类的文档注释.
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/inheritdoc
@inheritDoc
@inheritDoc
会继承父类的所有文档注释.在继承之后可以对指定字段进行重写_
@internal
: 被此标签标记的内部类/方法,作用范围只能限于当前文件,外部文件不可调用.
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/internal
@internal [description]
此标签通常可使用在单元测试中,比如在单元测试中定义了一个测试用的类,可对此测试类添加 @internal
标签,这样别人在正常逻辑中万一不小心错误引用了测试类,在IDE的帮助下,可以第一时间得到反馈.
@link
: 此标签可以引导你到指定的 外部跳转链接 .
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/link
@link [URI] [<description>]
该标签只有1个跳转选项
@外部跳转链接
: 必须是满足 RFC2396 的跳转链接,例如 http://github.com/yinggaozhen- | @see | @link |
---|---|---|
外部链接 | √ | √ |
内部程序 | √ | X |
_
@see
: 此标签可以引导你到指定的 外部跳转链接 / 内部程序 .
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/see
@see [URI | FQSEN] [<description>]
该标签可以有两个跳转选项
@外部跳转链接
: 必须是满足 RFC2396 的跳转链接,例如 http://github.com/yinggaozhen@内部程序链接
: 可以跳转到制定的类/方法/变量,如class::method- | @see | @link |
---|---|---|
外部链接 | √ | √ |
内部程序 | √ | X |
_
@var
: 定义一个数据的类型.
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/var
@var [Type] [$element_name] [<description>]
变量类型 | 说明 |
---|---|
string | 字符串 |
integer/int | number/int类型 |
boolean/bool | false/true |
float/double | number/浮点数 |
object | 对象实例 |
specifiedType | 指定类 |
mixed | 任意类型 |
array/specifiedType[] | 数组,可以指定成指定类型的数组 |
resource | 文件资源类型 |
void | 无返回值 |
null | - |
callable | 可执行的回调函数 |
function | 不一定能执行的方法 |
self/$this | 当前实例 |
实现@var可以有两种使用方法
_
@throws
: 抛出一个异常,告诉调用方需要做好处理异常相关工作.
详细代码演示 : https://github.com/yinggaozhen/doc-demo/tree/master/php/throws
@throws [Type] [<description>]
_
文章篇幅有限,这里列举了一部分标签,更多标签可以通过以下工程地址
项目工程地址: https://github.com/yinggaozhen/doc-demo/tree/master/php