PHPのはてな記法パーサーをver0.0.3にアップグレード
ダウンロード
HatenaSyntax ver0.0.3
過去のバージョンや詳しい仕様はこちら:やったーphpではてな記法のパーサーできたよー - id:anatooのブログ
変更点
- オプションを設定できるようになった
- HTMLをエスケープするかどうかの指定
- 記事のIDの指定(同一ページに複数の記事を置いても脚注のためのアンカーがかぶらないようにできる)
- 定義リスト記法の改良
- 記事と脚注をdivタグでくくるようにした
サンプル
<?php include 'HatenaSyntax.php'; // コンストラクタに渡す配列でオプション設定 $hs = new HatenaSyntax( array( 'htmlescape' => true, // htmlタグをエスケープするかどうか。デフォルトはfalse。 'id' => 'some_article' // 記事のid。脚注のアンカーに使われる。 )); echo $hs->parse(' *見出し 適当な文字列 <a href="javascript:alert(\'hoge\');">click!</a> **hoge :定義:説明 ::説明2 -リスト --リスト --リスト -リスト 本文です((脚注)) +順序付きリスト ++順序付きリスト +++順序付きリスト |*項目1|*項目2| |りんご|1 | |みかん|2 | >> ***引用 ですよー << ');
サンプルの実行結果
<div class="section"> <h3>見出し</h3> <p>適当な文字列</p> <p><a href="javascript:alert('hoge');">click!</a></p> <h4>hoge</h4> <dl> <dt>定義</dt> <dd>説明</dd> <dd>説明2</dd> </dl> <ul> <li>リスト</li> <ul> <li>リスト</li> <li>リスト</li> </ul> <li>リスト</li> </ul> <p>本文です(<a href="#f1_some_article" name ="#b1_some_article" title="脚注">*1</a>) </p> <ol> <li>順序付きリスト</li> <ol> <li>順序付きリスト</li> <ol> <li>順序付きリスト</li> </ol> </ol> </ol> <table> <tr><th>項目1</th><th>項目2</th></tr> <tr><td>りんご</td><td>1 </td></tr> <tr><td>みかん</td><td>2 </td></tr> </table> <blockquote> <h5>引用</h5> <p>ですよー</p> </blockquote> </div> <div class="footnote"> <p><a href="#b1_some_article" name="#f1_some_article">*1</a>: 脚注</p> </div>