Package Documentation
- Readme
ReflectionDocBlock
Introduction
The ReflectionDocBlock component of phpDocumentor provides a DocBlock parser that is 100% compatible with the PHPDoc standard.
With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.
Installation
composer require phpdocumentor/reflection-docblockUsage
In order to parse the DocBlock one needs a DocBlockFactory that can be instantiated using its
createInstancefactory method like this:$factory = \phpDocumentor\Reflection\DocBlockFactory::createInstance();Then we can use the
createmethod of the factory to interpret the DocBlock. Please note that it is also possible to provide a class that has thegetDocComment()method, such as an object of typeReflectionClass, the create method will read that if it exists.$docComment = <<<DOCCOMMENT /** * This is an example of a summary. * * This is a Description. A Summary and Description are separated by either * two subsequent newlines (thus a whiteline in between as can be seen in this * example), or when the Summary ends with a dot (`.`) and some form of * whitespace. */ DOCCOMMENT; $docblock = $factory->create($docComment);The
createmethod will yield an object of type\phpDocumentor\Reflection\DocBlockwhose methods can be queried:// Contains the summary for this DocBlock $summary = $docblock->getSummary(); // Contains \phpDocumentor\Reflection\DocBlock\Description object $description = $docblock->getDescription(); // You can either cast it to string $description = (string) $docblock->getDescription(); // Or use the render method to get a string representation of the Description. $description = $docblock->getDescription()->render();For more examples it would be best to review the scripts in the
/examplesfolder.
- Namespaces
\phpDocumentor \Reflection \DocBlock \phpDocumentor \Reflection \Exception \phpDocumentor \Reflection \PseudoTypes \phpDocumentor \Reflection \Types - Classes
- phpDocumentor
\Reflection \DocBlock - phpDocumentor
\Reflection \DocBlockFactory - phpDocumentor
\Reflection \DocBlockFactoryInterface - phpDocumentor
\Reflection \Element - phpDocumentor
\Reflection \File - phpDocumentor
\Reflection \Fqsen - phpDocumentor
\Reflection \FqsenResolver - phpDocumentor
\Reflection \Location - phpDocumentor
\Reflection \Project - phpDocumentor
\Reflection \ProjectFactory - phpDocumentor
\Reflection \PseudoType - phpDocumentor
\Reflection \Type - phpDocumentor
\Reflection \TypeResolver - phpDocumentor
\Reflection \Utils