forked from a64f7bb4-7358-4778-9fbe-3b882c34cc1d/v1
![]() |
||
---|---|---|
.. | ||
.github/workflows | ||
.settings | ||
src | ||
tests | ||
.gitignore | ||
.php-cs-fixer.php | ||
.project | ||
LICENSE | ||
README.md | ||
composer.json | ||
phpunit.xml.dist | ||
psalm.xml | ||
sami.php |
README.md
Docblock
PHP Docblock parser and generator. An API to read and write Docblocks.
WARNING: starting from version 4.0 the library has moved to phpowermove organization and the namespace is
phpowermove\docblock
.
Installation
Install via Composer:
composer require phpowermove/docblock
Usage
1. Generate a Docblock instance
a) Simple:
use phpowermove\docblock\Docblock;
$docblock = new Docblock();
b) Create from string:
use phpowermove\docblock\Docblock;
$docblock = new Docblock('/**
* Short Description.
*
* Long Description.
*
* @author gossi
*/');
c) Create from reflection:
use phpowermove\docblock\Docblock;
$docblock = new Docblock(new \ReflectionClass('MyClass'));
2. Manipulate tags
Get the tags:
$tags = $docblock->getTags();
Get tags by name:
$tags = $docblock->getTags('author');
Append a tag:
use phpowermove\docblock\tags\AuthorTag;
$author = new AuthorTag();
$author->setName('gossi');
$docblock->appendTag($author);
or with fluent API:
use phpowermove\docblock\tags\AuthorTag;
$docblock->appendTag(AuthorTag::create()
->setName('gossi')
);
Check tag existence:
$docblock->hasTag('author');
3. Get back the string
Call toString()
:
$docblock->toString();
or if you are in a write-context, the magical __toString()
will take care of it:
echo $docblock;
Documentation Api
See https://phpowermove.github.io/docblock
Contributing
Feel free to fork and submit a pull request (don't forget the tests) and I am happy to merge.
References
- This project uses the parsers from phpDocumentor/ReflectionDocBlock
Changelog
Refer to Releases