給php代碼添加規範的註釋
更多參考 http://phpdoc.org/docs/latest/index.html
在phpdocumentor中,註釋分爲文檔性註釋和非文檔性註釋。
所謂文檔性註釋,是那些放在特定關鍵字前面的多行註釋,特定關鍵字是指可以被phpdoc分析的關鍵字,例如class,var等,具體的可參加附錄1.
那些沒有在關鍵字前面或者不規範的註釋就稱做非文檔性註釋,這些註釋將不會被phpdoc所分析,也不會出如今你產生的api文當中。
3.2如何書寫文檔性註釋:
所 有的文檔性註釋都是由/**開始的一個多行註釋,在phpDocumentor裏稱爲DocBlock, DocBlock是指軟件開發人員編寫的關於某個關鍵字的幫助信息,使得其餘人可以經過它知道這個關鍵字的具體用途,如何使用。 PhpDocumentor規定一個DocBlock包含以下信息:
1. 功能簡述區
2. 詳細說明區
3. 標記tag
文檔性註釋的第一行是功能描述區,正文通常是簡明扼要地說明這個類,方法或者函數的功能,功能簡述的正文在生成的文檔中將顯示在索引區。功能描述區的內容能夠經過一個空行或者 . 來結束
在 功能描述區後是一個空行,接着是詳細說明區,. 這部分主要是詳細說明你的API的功能,用途,若是可能,也能夠有用法舉例等等。在這部分,你應該着重闡明你的API函數或者方法的一般的用途,用法,並 且指明是不是跨平臺的(若是涉及到),對於和平臺相關的信息,你要和那些通用的信息區別對待,一般的作法是另起一行,而後寫出在某個特定平臺上的注意事項 或者是特別的信息,這些信息應該足夠,以便你的讀者可以編寫相應的測試信息,好比邊界條件,參數範圍,斷點等等。
以後一樣是一個空白行,而後是文檔的標記tag,指明一些技術上的信息,主要是最主要的是調用參數類型,返回值極其類型,繼承關係,相關方法/函數等等。
文檔註釋中還可使用例如<b> <code>這樣的標籤php
<?php
/**
* @name 名字
* @abstract 申明變量/類/方法
* @access 指明這個變量、類、函數/方法的存取權限
* @author 函數做者的名字和郵箱地址
* @category 組織packages
* @copyright 指明版權信息
* @const 指明常量
* @deprecate 指明不推薦或者是廢棄的信息MyEclipse編碼設置
* @example 示例
* @exclude 指明當前的註釋將不進行分析,不出如今文擋中
* @final 指明這是一個最終的類、方法、屬性,禁止派生、修改。
* @global 指明在此函數中引用的全局變量
* @include 指明包含的文件的信息
* @link 定義在線鏈接
* @module 定義歸屬的模塊信息
* @modulegroup 定義歸屬的模塊組
* @package 定義歸屬的包的信息
* @param 定義函數或者方法的參數信息
* @return 定義函數或者方法的返回信息
* @see 定義須要參考的函數、變量,並加入相應的超級鏈接。
* @since 指明該api函數或者方法是從哪一個版本開始引入的
* @static 指明變量、類、函數是靜態的。
* @throws 指明此函數可能拋出的錯誤異常,極其發生的狀況
* @todo 指明應該改進或沒有實現的地方
* @var 定義說明變量/屬性。
* @version 定義版本信息
*/
function XXX($a){..}
<?php
/**
* Sample File 2, phpDocumentor Quickstart
*
* This file demonstrates the rich information that can be included in
* in-code documentation through DocBlocks and tags.
* @author Greg Beaver <cellog@php.net>
* @version 1.0
* @package sample
*/
//PHP code
/**
* A sample function docblock
* @global string document the fact that this function uses $_myvar
* @staticvar integer $staticvar this is actually what is returned
* @param string $param1 name to declare
* @param string $param2 value of the name
* @return integer
*/
function firstFunc($param1, $param2 = 'optional') {
static $staticvar = 7;
global $_myvar;
return $staticvar;
}