Laravel4、Markdownパッケージ
タグ: Laravel4
実はLaravel4のパッケージがPackagistに結構あります。この前チェックしたら4つもありました。
しかし、これに関してはLaravel専用のパッケージを入れる必要はあまり感じられません。Laravelに関係なく、つまりPHPのパッケージとして使用できる2パッケージをまずご覧ください。
PHP Markdown & Extra
PHPでMarkdownといえばこれです。
"dflydev/markdown": "1.0.*@dev"
これには2つ含まれています。PHP MarkdownとMarkdown Extraです。
Parsedown
新しいパッケージです。速度がMarkdownより、かなり早いと宣言しています。しかし、それはまあ当然で、純粋なMarkdownの範囲しか対応していません。つまり、テーブルなどは変換できません。
"erusev/parsedown": "dev-master"
使い所
実養成から言えば、PHP Markdown一択です。LaravelのMarkdownパッケージはたいていこれをファサードにし、Makrdown::...の形で変換できるようにするものです。
しかしです。よく考えてもらえば、コード中の複数箇所でMarkdownからHTMLの変換をすることは先ず無いでしょう。もし、その必要があったとしても、直接変換使用するのは設計が悪すぎます。できればクラスで、最低でもヘルパーメソッドなどで定義するのが通常でしょう。
しかも、もともと使い方は簡単です。Composerのオートローダーのおかげで、includeもする必要がありません。
$html = Michelf\MarkdownExtra\MarkdownExtra::defaultTransform($markdown);
ですから、Laravel専用パッケージを使ったり、わざわざファサードにする必要もありません。
存在しているからと言っても、むやみにLaravel専用パッケージを取り込むのは、やめましょう。必要性を考えていないパッケージもたくさんあります。