maxxscho / laravel-markdown-plus
一个简单的 Laravel Markdown 解析器,.md 文件中可选的元数据部分
Requires
- php: >=5.4.0
- illuminate/support: 4.2.*
- michelf/php-markdown: 1.4.*
- symfony/yaml: 2.5.*
Requires (Dev)
- mockery/mockery: dev-master
This package is auto-updated.
Last update: 2023-11-29 02:40:25 UTC
README
不再维护了!!
Laravel Markdown-Plus
一个简单的 Laravel 4 markdown 文件解析器,带有可选的元数据部分。
安装
Laravel Markdown-Plus 可以通过在项目的 composer.json 中添加 maxxscho/laravel-markdown-plus 包来使用 composer 进行安装。
{
"require": {
"maxxscho/laravel-markdown-plus": "~0"
}
}
接下来将服务提供者和别名添加到 app/config/app。
'providers' => [ // ... 'Maxxscho\LaravelMarkdownPlus\LaravelMarkdownPlusServiceProvider', ], 'aliases' => [ // .. 'MarkdownPlus' => 'Maxxscho\LaravelMarkdownPlus\Facade\LaravelMarkdownPlusFacade', ],
使用
Markdown 文件示例
元数据部分应以 YAML 风格书写,由自定义分隔符分隔,可以在配置中设置为一个正则表达式,默认为空行中的 3 个或更多短横线。示例
title: This is the title subtitle: This is the subtitle date: 5. September 2013 tags: [code, laravel] --- # Content goes here Lorem Ipsum ...
Laravel 中的使用
$file = File::get('test.md'); $document = MarkdownPlus::make($file); $content = $document->getContent(); $title = $document->title(); // magic method return View::make('your-view', compact('title', 'content'));
元数据将使用 Symfony 的 Yaml 解析器 进行解析。解析后,元数据为一个多维数组。
日期格式为 YYYY-MM-DD 的日期将被解析为时间戳。
可用方法
$document->getContent() - 返回解析后的 Markdown (HTML 内容)
$document->getRawContent() - 返回原始内容 (纯 Markdown)
$document->getMeta() - 返回整个元数据作为一个多维数组
$document->title() - 这是一个魔法方法。方法名返回其等效的元数据。例如 $document->cool-meta() 返回 cool-meta: Cool Value 的值
配置
Laravel-Markdown-Plus 包含一些基本的配置。
发布配置以自定义选项
php artisan config:publish maxxscho/laravel-markdown-plus
您可以在 app/config/packages/maxxscho/laravel-markdown-plus 中找到配置文件
可用的配置选项
'use_meta' => true, - 是否使用元数据
'section_splitter' => '/\s+-{3,}\s+/', - 部分分隔符
'use_extra' => true, - 是否解析带有 额外功能 的 markdown
'markdown_parser_options' - markdown 解析器的选项。 更多信息
许可证
这是免费软件,根据 MIT 许可证的条款分发。
附加信息
本包灵感来源于Dayle Rees Kurenai。
此包使用