2021.06.23
21

MarkdownをHTMLで表示したいんや!

以前Readmeを書いた際に、外部に共有する方法を模索してまして、HTMLに変換してアップすればええかって考えに至ったんですが、そのときの備忘録です。簡単にいうと「.md」拡張子のファイルを「HTML」として表示したい!ってことです。

Markdownってなんなんや!

これに関しては僕から説明するより、Wikipediaさんの記事を参照する方がいいかと思います。どうせ引用なのだから。

本題です

というわけで、やりたいと思ったことを調べたら良い感じのPHPライブラリを発見しました。
それが「php-markdown」というものです(ちょっと古いですが、PHP5.3以上で動くみたいです)。

DLして設置

今回僕がやったのは「Usage without an autoloader」で紹介されている方法です。自動読み込みを使わない方法って感じでしょうかね。

とりあえず、先ほど貼ったGitHubからパッケージをDLしましょう。そしてオリジナルのMarkdownなら「Markdown.inc.php」を、Markdown拡張仕様であるExtraモードを使用しているなら「MarkdownExtra.inc.php」をincludeまたはrequireで呼び出します。

require_once 'path_to/MarkdownExtra.inc.php';

今回はExtraモードでの記述例ですが。こんな感じですね。

あとは関数の実行

use Michelf\MarkdownExtra;
$text = file_get_contents('README.md');
$html = MarkdownExtra::defaultTransform($text);
echo $html;

上記コードで、MarkdownをHMTLへと変換、出力してくれます。
と、まぁこんな感じで簡単にできますよって話。

エディタやブラウザの拡張機能でも簡単に表示できたりするので、ほとんど使うことはないでしょうが
共有したい時に、その人がMarkdownってなんぞ?状態なら使えなくはないんじゃないですかね?

まぁ、どこか頭の片隅にでも。