Я играю с PHPDoc и понял, что вы можете использовать уценку, чтобы добавить некоторое форматирование в DocBlock. В частности, я замечаю, что вы можете использовать обратные тики, чтобы выделить встроенный код.
Тем не менее, я не могу понять, как добавить блоки кода в DocBlock, поскольку использование 4 пробелов не работает.
Я также пробовал использовать <code>
и <pre>
, и пока эти теги появляются в сгенерированной документации, код внутри них комментируется с комментариями HTML.
Например, этот DocBlock:
/** * This is a test DocBlock * * <pre> * <?php * echo('hi'); * ?> * </pre> * * @return object[] An array of objects. */
Создает этот HTML:
<pre> <!--?php echo('hi'); ?--> </pre>
Где я иду не так? Как добавить блок кода в DocBlock?
phpdocumentor использует gytub-вариант уценки.
Правильный способ добавления кода:
/** * This is a test DocBlock * * ```php * echo('hi'); * ``` * * @return ... */
Я не думаю, что вы должны добавить <?php
, я бы предположил, что он отключит его при разборе. Видя phpdoc, вы, вероятно, можете пропустить его все вместе.
пытаться
* <code> * echo('hi'); * </code>
В руководстве phpDocumentor указано, что для описаний
вы можете отформатировать свой текст в соответствии с Markdown , а точнее, Markdown от Github . Используя этот формат, легко сделать текст полужирным шрифтом, добавить примеры встроенных кодов или легко создать ссылки на другие сайты. – Внутри DocBlocks
PSR-5 PHPDoc говорит для описания
Любое приложение, анализирующее описание, РЕКОМЕНДОВАНО для поддержки языка разметки Markdown для этого поля, чтобы автор мог обеспечить форматирование и четкий способ представления примеров кода. – Описание
И эти теги
ДОЛЖЕН поддерживать Markdown как язык форматирования. Из-за характера Markdown законно начинать описание тега на той же или последующей строке и интерпретировать его таким же образом. – Тег
/** * This is a Summary. * * This is a Description. It may span multiple lines * or contain 'code' examples using the _Markdown_ markup * language. * * It's very easy to make some words **bold** and other * words *italic* with Markdown. You can even * [link to Google!](http://google.com). * * Here's an example of how you can use syntax * highlighting with GitHub Flavored Markdown: * * ``` * <?php * echo "Hello, world."; * ?> * ``` * * You can also simply indent your code by four spaces: * * <?php * echo "Hello, world."; * ?> * * @see Markdown * * @param int $parameter1 A parameter description. * @param \Exception $e Another parameter description. * * @\Doctrine\Orm\Mapper\Entity() * * @return string */ function test($parameter1, $e) { ... }
Вы должны иметь возможность использовать: –
/** * This is a test DocBlock * * <pre> * <?php * echo('hi'); * ?> * </pre> * * @return object[] An array of objects. */