Laravel 9.xでMarkdownをHTML形式に変換
2023-03-22
Laravel 9.xで使用できる、Markdown形式のテキストをHTMLに変換するためのライブラリとして、League\CommonMarkをご紹介します。
まず、League\CommonMarkをプロジェクトにインストールします。プロジェクトルートで、以下のコマンドを実行してください。
javascriptcomposer require league/commonmark
インストールが完了したら、Laravelのコントローラ内でMarkdownをHTMLに変換できるようになります。以下にコードの例を示します。
php// app/Http/Controllers/ArticleController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use League\CommonMark\CommonMarkConverter;
class ArticleController extends Controller
{
public function submit(Request $request)
{
$markdownContent = $request->input('markdown_content');
// MarkdownをHTMLに変換
$converter = new CommonMarkConverter();
$htmlContent = $converter->convertToHtml($markdownContent);
// ここで変換されたHTMLをデータベースに保存するなど、
// 必要な処理を実行してください。
// 例: データベースに保存
// $article = new Article();
// $article->content = $htmlContent;
// $article->save();
return view('article.show', ['content' => $htmlContent]);
}
}
このコード例では、Markdown形式のテキストをHTMLに変換しています。変換されたHTMLは、データベースに保存されるか、ビューに渡されるなど、必要な処理が実行されます。