Допустим, у меня есть родительский класс с некоторой переменной, которая имеет 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;
}
Так что мой вопрос: какой phpdoc следует писать для переменной $ в классе Child, поэтому мне не нужно копировать и вставлять описание переменных? Тот же вопрос идет о методах. Помощь очень ценится.
Обновление: Я задал этот вопрос после того, как увидел ошибки после создания phpdoc, например «Нет сводки для свойства $ variable» в классе Child. Если я добавлю это резюме, ошибка исчезнет, но phpdoc все равно покажет описание из класса Parent, независимо от того, что я пишу в классе Child. Что я делаю не так?
['{@inheritdoc}'] (http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_tags.inlineinheritdoc.pkg.html), может быть? – Clive
{@inheritDoc} похоже, используется для описания класса, а не для переменной/метода. Возможно, это должно быть сделано с {@see}, но я, похоже, не могу найти правильный путь. –
Ах да, [кажется, они изменили его] (http://pear.php.net/bugs/bug.php?id=12211). Забавно, но я знаю крупный PHP-проект с открытым исходным кодом, который использует '{@inheritdoc}' религиозно по методам/переменным класса, а не только для классов. И их документы компилируются просто отлично. Фактически, даже Symfony использует его, так что это, безусловно, правильный путь – Clive