codeigniter
INFLECTORヘルパーで英語の単語で遊ぶ
サーチ…
前書き
Inflectorは英語の単語を単数形、複数形、キャメル版、人間化などに変更/変換する非常に便利なヘルパーです。ヘルパーは単語に複数形があるかどうかを確認するのにも役立ちます。
インフルエンザヘルパーを読み込む
inflectorヘルパーのメソッドを使用するには、まず次のコードを使用して他のすべてのヘルパーのようにヘルパーをロードします。
$this->load->helper('inflector');
単語を特異にする
関数singular($string)
は、複数の単語を単数形に変換します。完璧な結果を得るには、 $string
は単一の単語でなければなりません。この関数はstring
を返しstring
。
echo singular("books"); //prints 'book'
単語が複数であることを確認する
is_countalbe($string)
は、単語が複数形かどうかを調べるためのものです。戻りboolean
型はboolean
です。指定された単語が複数形を持つ場合はtrue
を返し、そうでない場合はfalse
を返しfalse
。
is_countable('book'); // Returns TRUE
複数の単語を作る
英語の単語を複数形にするには、 plural($string)
関数が便利です。 singular($string)
と同様に、関数plural($string)
もstring
resultを返しstring
。
echo plural("book"); //prints 'books'
文字列をキャメル化
キャメルケースは、すべての単語が大文字で始まり、単語間にスペースがない複合語または句を書く習慣です。関数camelize($string)
は、文字列をラクダ化するのに役立ちます。スペースやアンダースコアで区切られた単語列をラクダに変換します。
echo camelize('Mc donald'); //Prints mcDonald
単語間の区切り文字の削除/追加
区切り文字を削除する
関数humanize($words)
、アンダースコアで区切られた複数の単語を取り、各単語が大文字で始まるアンダースコアのためのスペースを追加します。
echo humanize('mac_donald'); // Prints 'Mac Donald'
この関数は、宣言されたセパレータ/区切り文字を置き換えることもできます。この場合、デリミタは2番目のパラメータになります。
echo humanize('mac-donald','-'); // Prints 'Mac Donald'
echo humanize('mac#donald','#'); // Prints 'Mac Donald'
アンダースコアを追加
一方、 underscore($words)
関数は単語間のスペースをアンダースコア(_)で置き換えます。
echo underscore('Mac Donald'); // Prints 'mac_donald'
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow