Как остановить предупреждения в парсере phpDocumentor при наследовании от внешнего библиотечного класса? - PullRequest
3 голосов
/ 14 июня 2011

Я добавил docblocks в свой код и исправил большинство ошибок сборки и предупреждений, сгенерированных скриптом phpDocumentor и помещенных в файл errors.html.

Однако у меня есть последний«класс» предупреждений в моей текущей сборке документации - я получаю предупреждение для каждого класса, который я задокументировал в своем приложении, который наследуется от внешней библиотеки (в данном случае, Zend).

Есть ли способостановить предупреждения, такие как Warning - Class AMH_Controller_Action parent Zend_Controller_Action not found от появления?Как мне сообщить phpDoc о том, что родительский объект взят из внешней библиотеки, и, возможно, дать ссылку на документацию Zend?

1 Ответ

2 голосов
/ 14 июня 2011

phpDocumentor сам по себе не имеет встроенной опции для обработки этого варианта использования. В прошлом я создавал фиктивный файл, содержащий пустые объявления классов для всех «не найденных» классов, помечал эти классы как «@package DoNotDocument» и использовал аргумент runtime --packageoutput [1] без перечисление «DoNotDocument» в списке пакетов для включения в выходные документы. Конечно, это взлом, но эффект таков:

a) избегать предупреждений «not found» (потому что класс теперь «существует»),

пока b) не создает никаких документов для фиктивных классов.

/**
 * @package DoNotDocument
 */
class Zend_Controller_Action {}

phpdoc -d ./src -t ./docs -po MyPackage1,MyPackage2

Теперь, что стоит задуматься о ваших документах, если ваши классы действительно расширяют классы ZF. Если phpDocumentor не проанализирует эти источники ZF, ваши документы API для ваших классов не будут показывать, какие методы и т. Д. Унаследованы от этих родителей ZF. Если бы это была моя кодовая база, я бы позволил phpDocumentor анализировать файлы ZF, но избегал бы документирования классов ZF , а не , перечисляющего присущее им значение @package (например, "Zend_Controller") во время выполнения - аргумент packageoutput.

[1] - http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#using.command-line.packageoutput

...