Каков надлежащий формат документации по функциям PHP?

Документация PHP – это одно дикое животное, даже стиль underscore_vsCamelCase не отличается от этого. Так что даны все типы документации PHP, которые я видел до сих пор – это стандарт? Как мои функции и методы должны быть помечены так, чтобы большинство библиотек IDE и документации могли их читать?

В приведенных ниже примерах (тип) является одним из следующих:

  • BOOL
  • ИНТ
  • массив
  • объект
  • строка
  • поплавок

и имя – это просто имя переменной param (например, $ values)

/* * Function name * * what the function does * * @param (type) about this param * @return (type) */ function example((name)) /* * What the function does * * @param (name) about this param * @return (name) */ function example((name)) /** * Function name * * what the function does * * @param (type) (name) about this param * @return (type) (name) */ function example((name)) /** * Function name * what the function does * * Parameters: * (name) - about this param */ function example((name)) 

По словам Хойла , нет никакого официального комментария. Самое близкое, что вы найдете, это руководство по кодированию Zend Framework. Zend Framework создается Zend, которая глубоко вовлечена в создание PHP, поэтому вы можете утверждать, что их руководство по кодированию – это те, которые должны соблюдаться.

Можно также утверждать, что любые комментарии, которые принимают форму

 /** <--- starts with */ <--- ends with 

Является официальным форматом документации, поскольку они будут проанализированы и доступны через API отражения. Многие люди используют это, а формат PHPDoc – для форматирования официального формата.

Многие люди используют PHPdoc в качестве стандарта.

 <?php /** * I belong to a file */ /** * I belong to a class */ class Def { } /** * A summary informing the user what the associated element does. * * A *description*, that can span multiple lines, to go _in-depth_ into * the details of this element and to provide some background information * or textual references. * * @param string $myArgument With a *description* of this argument, these * may also span multiple lines. * * @return void */ function myFunction($myArgument) { } ?> 

Я думаю, что PHPDoc довольно стандартный. Также ваш вопрос задавали раньше (что может дать вам еще несколько идей).

Возможно, стоит взглянуть на doxygen . Он поддерживает многоязычность и стандартный формат ввода.