2012-09-09 35 views
5

當PhpStorm使用自動PHP的docblock一代,我結束了與@static註釋的靜態方法:像@static這樣冗餘的php docblock標籤有什麼意義?

/** 
* Reset the singleton instance, for the tests only 
* @static 
*/ 
public static function reset() { 
    self::$singletonInstance = null; 
} 

是否有這些標記任何使用,如果他們可以從代碼可以推斷?我試圖決定是否應該放棄它或刪除它(並且在任何地方都這樣做,因此它是一致的)。

回答

6

這些標籤是爲傳統的PHP 4代碼引入的,它們不允許在代碼中使用這些關鍵字。在PHP 5中,代碼實際上是自我記錄的,因此這些代碼確實是多餘的;我沒有看到任何理由讓他們周圍。實際上,如果您曾爲您的PHP 5源文件生成文檔,phpDocumentor仍然應該能夠確定這些是靜態方法。這是在phpDocumentor docs提到:

只需使用你的代碼的靜態關鍵字是不夠的phpDocumentor在PHP5識別靜態變量和方法,將phpDocumentor的它們標記爲靜態。

+1

哦,是的我沒有想到PHP4,現在它是有道理的;) –