PHPDocumentor 整理目光规范
- string 字符串类型
- integer or int 整型
- boolean or bool 布尔类型 true or false
- float or double 浮点类型
- object 对象
- mixed 混合类型 没有指定类型或不确定类型时使用
- array 数组
- resource 资源类型 (如数据库查询返回)
- void 空值(控制器返回值常常使用)
- null null类型
- callable 回调函数
- false or true 仅仅返回true or fasle 时使用
- self 自身
你会写凝视么?从我写代码開始。这个问题就一直困扰着我。相信也相同困扰着其它同学。曾经的写凝视总是没有一套行之有效的标准,给维护和协同开发带了很多麻烦,直到近期读到了phpdocumentor的凝视标准。
以下对phpdocumentor的凝视标准进行总结:
Type(数据类型):
Tags(标签):
|
Tag |
Element |
Description |
|
api |
Methods |
声明接口 |
|
author |
Any |
作者信息 |
|
category |
File, Class |
将一系列的元素分类在一起 |
|
copyright |
Any |
版权信息 |
|
deprecated |
Any |
声明元素已被弃用,能够在将来的版本号中删除 |
|
example |
Any |
演示样例 |
|
filesource |
File |
文件资源 |
|
global |
Variable |
声明一个全集变量 |
|
ignore |
Any |
忽略当前元素 (phpdocumentor 生成文档时) |
|
internal |
Any |
声明一个值为整形,或者设置一个应用的默认值为整型 |
|
license |
File, Class |
声明许可类型 |
|
link |
Any |
声明一个和当前元素有关的链接 |
|
method |
Class |
声明当前类那些魔术方法能够被调用 |
|
package |
File, Class |
声明当前元素所属的包 |
|
param |
Method, Function |
声明当前元素的一个參数 |
|
property |
Class |
声明当前类有那些魔术方法能够被调用属性 |
|
property-read |
Class |
声明当前类有那些魔术方法能够读取属性 |
|
property-write |
Class |
声明当前类有那些魔术方法能够设置属性 |
|
return |
Method, Function |
返回值 |
|
see |
Any |
说明当前元素參数引用于其它网站或元素 |
|
since |
Any |
声明当前元素始于于哪个版本号 |
|
source |
Any, except File |
展示当前元素的源代码 |
|
subpackage |
File, Class |
将当期元素分类 |
|
throws |
Method, Function |
说明当前元素抛出的异常 |
|
todo |
Any |
说明当前元素的开发活动 |
|
uses |
Any |
引用一个关联元素 |
|
var |
Properties |
声明属性 |
|
version |
Any |
版本号 |
Example(演示样例):
// =============================
@api
/**
* This method will not change until a major release.
*
* @api
*
* @return void
*/
function showVersion()
{
<...>
}// =============================
@author
/** * @author My Name * @author My Name <my.name@example.com> */
// =============================
@category
/** * Page-Level DocBlock * * @category MyCategory * @package MyPackage */
// =============================
@copyright
/** * @copyright 1997-2005 The PHP Group */
// =============================
@deprecated
/**
* @deprecated
* @deprecated 1.0.0
* @deprecated No longer used by internal code and not recommended.
* @deprecated 1.0.0 No longer used by internal code and not recommended.
*/
function count()
{
<...>
}
// =============================
@example
/**
* @example example1.php Counting in action.
* @example http://example.com/example2.phps Counting in action by a 3rd party.
* @example "My Own Example.php" My counting.
*/
function count()
{
<...>
}
// =============================
@filesource
/** * @filesource */
// =============================
@global phpdocumentor2.0不支持
// =============================
@ignore
if ($ostest) {
/**
* This define will either be 'Unix' or 'Windows'
*/
define("OS","Unix");
} else {
/**
* @ignore
*/
define("OS","Windows");
}
// =============================
@internal
/**
* @internal
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
/**
* Counts the number of Foo.
*
* {@internal Silently adds one extra Foo to compensate for lack of Foo }}
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
// =============================
@license
/** * @license GPL * @license http://opensource.org/licenses/gpl-license.php GNU Public License */
// =============================
@link
/**
* @link http://example.com/my/bar Documentation of Foo.
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
/**
* This method counts the occurrences of Foo.
*
* When no more Foo ({@link http://example.com/my/bar}) are given this
* function will add one as there must always be one Foo.
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
// =============================
@method
class Parent
{
public function __call()
{
<...>
}
}
/**
* @method string getString()
* @method void setInteger(integer $integer)
* @method setString(integer $integer)
*/
class Child extends Parent
{
<...>
}
// =============================
@package
/** * @package PSR\Documentation\API */
// =============================
@param
/**
* Counts the number of items in the provided array.
*
* @param mixed[] $items Array structure to count the elements of.
*
* @return int Returns the number of elements.
*/
function count(array $items)
{
<...>
}
// =============================
@property
class Parent
{
public function __get()
{
<...>
}
}
/**
* @property string $myProperty
*/
class Child extends Parent
{
<...>
}
// =============================
@property-read
class Parent
{
public function __get()
{
<...>
}
}
/**
* @property-read string $myProperty
*/
class Child extends Parent
{
<...>
}
// =============================
@property-write
class Parent
{
public function __set()
{
<...>
}
}
/**
* @property-write string $myProperty
*/
class Child extends Parent
{
<...>
}
// =============================
@return
/**
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}/**
* @return string|null The label's text or null if none provided.
*/
function getLabel()
{
<...>
}
// =============================
@see
/**
* @see http://example.com/my/bar Documentation of Foo.
* @see MyClass::$items for the property whose items are counted
* @see MyClass::setItems() to set the items for this collection.
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
// =============================
@since
/**
* @since 1.0.1 First time this was introduced.
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
/**
* @since 1.0.2 Added the $b argument.
* @since 1.0.1 Added the $a argument.
* @since 1.0.0
*
* @return void
*/
function dump($a, $b)
{
<...>
}
// =============================
@source
/**
* @source 2 1 Check that ensures lazy counting.
*/
function count()
{
if (null === $this->count) {
<...>
}
}
// =============================
@subpackage
/** * @package PSR * @subpackage Documentation\API */
// =============================
@throws
/**
* Counts the number of items in the provided array.
*
* @param mixed[] $array Array structure to count the elements of.
*
* @throws InvalidArgumentException if the provided argument is not of type
* 'array'.
*
* @return int Returns the number of elements.
*/
function count($items)
{
<...>
}
// =============================
@todo
/**
* Counts the number of items in the provided array.
*
* @todo add an array parameter to count
*
* @return int Returns the number of elements.
*/
function count()
{
<...>
}
// =============================
@uses
/**
* @uses MyClass::$items to retrieve the count from.
*
* @return integer Indicates the number of items.
*/
function count()
{
<...>
}
// =============================
@var
class Counter
{
/**
* @var
*/
public $var;
}
// =============================
@version
/**
* @version 1.0.1
*/
class Counter
{
<...>
}
/**
* @version GIT: $Id$ In development. Very unstable.
*/
class NeoCounter
{
<...>
}
// =============================
phpdocumentor手冊:http://www.phpdoc.org/docs/latest/index.html
浙公网安备 33010602011771号