2010-08-30 67 views
1

用phpdoc記錄修改受保護屬性的方法的最佳方式是什麼?如何記錄一個用phpdoc修改受保護屬性的方法?

例如,下面記錄setVar()方法的正確方法是什麼?

class Test { 
    protected $variables = array(); 

    public function setVar($name, $value) { 
    $this->$variables[$name] = $value; 
    } 
} 

由於提前,

.L。

回答

0

我通常使用類似於以下內容的東西,儘管可能有更好的方法。

class Test { 
    protected $variables = array(); 

//** 
    * Setter for $this->variables 
    * 
    * @var string 
    * @var string 
    * @returns void 
    */ 
    public function setVar($name, $value) { 
    $this->$variables[$name] = $value; 
    } 
} 
4

我想這取決於爲什麼你是想強調的方法會影響受保護的屬性...

如果你只是想「說」,只是在說明中這樣說,使用或不使用內聯@link標籤:

/** 
* Setter for $variables or {@link Test::$variables} 
* ... 

通過使用內嵌@link,在該方法的描述產生到$變量文檔的超鏈接。

您可以使用@see標籤是一個獨立的參考屬性:

/** 
* Setter 
* @see Test::$variables 
* ... 

這也使得超鏈接屬性的文件,但它由自己的標籤更突出。

如果你想創建從方法到屬性的「指針」,使用@uses標籤:

/** 
* Setter 
* @uses Test::$variables 
* ... 

的方法中的@uses標籤,這裏將自動放置在一個@usedby標籤$ variables屬性的文檔...結果是從方法文檔中的方法到屬性的超鏈接,以及從屬性到文檔中方法的超鏈接。可以把它看作類似於將角落房間連接到對面角落房間的棋盤遊戲中的「祕密通道」。

通過@uses標籤可以滿足的另一個目的是$ variables的文檔將顯示@usedby標籤的列表,顯示影響該屬性的所有方法......當然,假設您已經認真對待在這些方法中加入@uses標籤。

+0

最常見的原因是不必重新鍵入變量的描述。 – systemovich 2017-01-25 17:14:16