phpowermove / docblock
PHP Docblock 解析器和生成器。一个用于读取和写入 Docblocks 的 API。
v4.0
2021-09-22 16:57 UTC
Requires
- php: >=8.0
- phootwork/collection: ^3.0
- phootwork/lang: ^3.0
Requires (Dev)
- phootwork/php-cs-fixer-config: ^0.4
- phpunit/phpunit: ^9.0
- psalm/phar: ^4.3
README
PHP Docblock 解析器和生成器。一个用于读取和写入 Docblocks 的 API。
警告:从版本 4.0 开始,该库已迁移到 phpowermove 组织,命名空间为
phpowermove\docblock
。
安装
通过 Composer 安装
composer require phpowermove/docblock
用法
1. 生成 Docblock 实例
a) 简单
use phpowermove\docblock\Docblock; $docblock = new Docblock();
b) 从字符串创建
use phpowermove\docblock\Docblock; $docblock = new Docblock('/** * Short Description. * * Long Description. * * @author gossi */');
c) 从反射创建
use phpowermove\docblock\Docblock; $docblock = new Docblock(new \ReflectionClass('MyClass'));
2. 操作标签
获取标签
$tags = $docblock->getTags();
按名称获取标签
$tags = $docblock->getTags('author');
添加标签
use phpowermove\docblock\tags\AuthorTag; $author = new AuthorTag(); $author->setName('gossi'); $docblock->appendTag($author);
或使用流畅 API
use phpowermove\docblock\tags\AuthorTag; $docblock->appendTag(AuthorTag::create() ->setName('gossi') );
检查标签存在性
$docblock->hasTag('author');
3. 返回字符串
调用 toString()
$docblock->toString();
或者如果您处于写入上下文,则魔法函数 __toString()
将会处理它
echo $docblock;
文档 API
见https://phpowermove.github.io/docblock
贡献
请随意分支并提交拉取请求(别忘了测试),我会很高兴将其合并。
参考
- 本项目使用 phpDocumentor/ReflectionDocBlock 的解析器。
变更日志
参考 发布版本