mprince / laravel-mdparser
Laravel Markdown 解析器
dev-main
2023-01-02 07:10 UTC
Requires
- erusev/parsedown: ^1.7
- illuminate/support: ^9.45
Requires (Dev)
- mockery/mockery: ^1.5
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-30 01:41:56 UTC
README
这是一个轻量级、易于使用的 Laravel 包,用于处理 Markdown。它包括一个门面、一个辅助函数和一个 Blade 指令,以使您的使用更加便捷。
安装
要安装它,只需使用 Composer 下载。运行 php artisan vendor:publish
命令以发布配置文件。
composer require mprince/laravel-mdparser
Laravel 9 及以上版本使用包自动发现,因此您无需手动添加 MarkdownServiceProvider。
使用方法
Blade 指令
您可以使用 @markdown
指令在 Blade 模板中使用 Markdown 解析器。
<article> <h1>{{ $post->title }}</h1> <section class="content"> @markdown($post->body) </section> </article>
您也可以使用块状语法
@markdown # Hello world This *text* will be **parsed** to [HTML](https://laravel.net.cn). @endmarkdown
门面
如果您已如上所示注册了 Markdown 门面,则可以使用它轻松解析 Markdown。
$markdown = "# Hello"; $html = Markdown::parse($markdown) // <h1>Hello</h1>
辅助函数
$html = markdown('# Hello'); // <h1>Hello</h1>
$html = markdown_capture(function () { echo "# Hello"; echo "\n\n"; echo "So **cool**!" }); // <h1>Hello</h1> // <p>So <b>cool</b>!</p>
当然,您也可以从服务容器中解析解析器并自行使用。
$parser = app('Mprince\Markdown\Parser'); $html = $parser->parse('# Hello'); // <h1>Hello</h1>
驱动器(全新!)
Laravel-Markdown 允许您添加自定义 Markdown 驱动器。为了使用自定义 Markdown 驱动器,您需要创建一个实现 Mprince\Markdown\Drivers\MarkdownDriver
接口的类。该接口包含两个方法:text
和 line
。text
用于将一段 Markdown 转换为 HTML,而 line
用于将单行转换为 HTML。
Laravel-Markdown 附带了一个使用 Parsedown-package 的 ParsedownDriver
,由 @erusev 提供。
致谢
- 穆罕默德·赛义德 (@themsaid)
许可证
在 MIT 许可下发布。更多信息,请参阅 LICENSE 文件。