2013-07-22 35 views
0

可以說我有父類的一些變量,其中有PHPDoc的:歸檔繼承函數/變量在子類中有PHPDoc的

class Parent 
{ 
    /** 
    * This variable stores some important value that 
    * is going to be changed in child classes 
    * @var integer 
    */ 
    public $variable = 0; 
} 

現在我寫子類,它有這個變量重寫:

class Child extends Parent 
{ 
    public $variable = 10; 
} 

所以我的問題是:我應該在Child類中爲$變量寫什麼phpdoc,所以我不必複製和粘貼變量描述?方法也是同樣的問題。非常感謝幫助。

更新: 我在創建phpdoc之後發現錯誤,比如Child類中的「沒有對屬性$ variable的摘要」,所以問了這個問題。如果我添加此摘要 - 錯誤消失,但無論如何,無論我在Child類中寫什麼,phpdoc都會顯示來自父類的描述。我究竟做錯了什麼?

+0

['{@inheritdoc}'](http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_tags.inlineinheritdoc.pkg.html)也許? – Clive

+0

{@inheritDoc}似乎用於類描述,而不是用於變量/方法。也許它應該用{@see}來完成,但我似乎無法找到正確的方法。 –

+0

啊是的,[他們似乎改變了它](http://pear.php.net/bugs/bug.php?id=12211)。有趣的是,我知道一個主要的開源PHP項目,它在宗教類方法/變量上使用'{@inheritdoc}',而不僅僅是類。他們的文檔編譯得很好。事實上,即使Symfony也使用它,所以它絕對是正確的選擇 – Clive

回答

0

這種行爲聽起來像是一個bug。完全缺乏子類屬性的docblock應該導致父屬性docblock被完全繼承。請在github回購中將其報告爲問題。