CodeIgniter ユーザガイド 日本語版 Version 2.0.3


タイポグラフィークラス

タイポグラフィークラスは、文字列のフォーマットに役立つメソッドを提供します。

クラスの初期化

CodeIgniterの大部分のクラスと同様、タイポグラフィークラスはコントローラの中で $this->load->library メソッドを使って初期化します:

$this->load->library('typography');

いったん読み込まれると、タイポグラフィーオブジェクトは、次のようにして利用可能です: $this->typography

auto_typography()

テキストを、意味論的にも体裁的にも正しいHTMLにフォーマットします。 入力した文字列を、以下のような体裁に整形して返します:

使用例:

$string = $this->typography->auto_typography($string);

パラメータ

オプションでパーサが2つ以上の連続した改行を2つに減らすべきかどうかを指定します。ブール値の TRUEFALSE で指定します。

デフォルトでは、パーサは JS のイベントハンドラを無効にし、改行は減らしません。言い換えると、引数を何も指定しなければこのように指定するのと同じです:

$string = $this->typography->auto_typography($string, TRUE, FALSE);

Note: この処理は、文章が大量である場合は特に、プロセッサーに負荷をかけます。 このメソッドを使う場合、 ページをキャッシュする事も検討した方が良いかもしれません。

format_characters()

このメソッドは、文字列変換のみを行うという点を除けば、上記の auto_typography メソッドと似ています:

使用例:

$string = $this->typography->format_characters($string);

nl2br_except_pre()

<pre> タグ内にある場合を除き、改行を <br /> タグに変換します。 このメソッドは、<pre> タグ内を無視するという点を除けば、PHPのネイティブ関数 nl2br() と同じです。

使用例:

$string = $this->typography->nl2br_except_pre($string);

protect_braced_quotes

タイポグラフィークラスをテンプレートパーサクラスと一緒に利用している場合、括弧({})内のシングルクォートやダブルクォートをそのまま利用したい、というケースがよくあります。 そういう場合は、クラスのプロパティ protect_braced_quotesTRUE に指定してください。

使用例:

$this->load->library('typography');
$this->typography->protect_braced_quotes = TRUE;