daylerees / kurenai
支持元数据的多文档解析器。
2.1.0
2018-07-18 07:52 UTC
Requires
- php: >=5.6.5
- illuminate/support: ^5.2
Requires (Dev)
- erusev/parsedown: ^1.6
- jakub-onderka/php-parallel-lint: ^0.9.2
- league/commonmark: ^0.17
- michelf/php-markdown: ^1.6
- netcarver/textile: ^3.5
- phing/phing: ^2.13
- phpunit/phpunit: >=4.8
- squizlabs/php_codesniffer: ^2.5
- symfony/yaml: ^3.0
Suggests
- erusev/parsedown: Allow for Parsedown markdown parsing.
- league/commonmarl: Allow for CommonMark markdown parsing.
- michelf/php-markdown: Allow markdown and markdown extra content parsing.
- netcarver/textile: Allow for Textile parsing.
- symfony/yaml: Allow for YAML metadata parsing.
This package is not auto-updated.
Last update: 2024-09-14 13:37:01 UTC
README
Kurenai
Kurenai 是一个用于 PHP 的元数据解析库的文档。它支持多种不同的文档内容和元数据解析器。
安装
Kurenai 可在 Packagist 上通过 Composer 获取。
composer require daylerees/kurenai
用法
Kurenai 文档看起来像这样
Some form of metadata here.
===
Some form of content here.
一个元数据部分和一个内容部分,通过三个或更多等于号 ===
分隔。
以下是一个使用 JSON 作为元数据和 Markdown 作为内容的示例。
{
"title": "Hello world!"
}
===
# Hello World
Well hello there, world!
使用名为解析器的类,元数据和内容格式可以互换。首先,让我们创建解析器实例。
$kurenai = new \Kurenai\Parser( new \Kurenai\Parsers\Metadata\JsonParser, new \Kurenai\Parsers\Content\MarkdownParser );
在上面的例子中,我们使用 JSON 元数据解析器和 Markdown 内容解析器。现在我们可以解析一个文档。
$document = $kurenai->parse('path/to/document.md');
我们的文档可以有任意文件名或扩展名。你也可以直接传递文档的内容给 parse()
函数。
文档实例有几个有用的方法。
$document->getRaw();
这将获取原始文档内容。在 Kurenai 解析之前。
$document->getMetadata();
这将获取元数据,解析成数组。
$document->getContent();
这将获取文档内容,使用提供的解析器渲染。
$document->get('foo.bar');
get()
方法使用点符号返回元数据值。例如,上面的例子等价于获取 $metadata['foo']['bar']
。
如果找不到主题,将返回 null
。你可以向方法提供默认值作为第二个参数。
元数据解析器
内容解析器
享受使用 Kurenai!