文字列変換に便利!CakePHPの組み込みライブラリ(Inflector)
先日のシルバーウィーク、思わぬ休暇と同時に頂いたので13連休でした。ichikawaです。
インフルエンザといい、体調にはくれぐれも気をつけたいものです。
本日はCakePHPの組み込みライブラリ「Inflector」について簡単にお話ししたいと思います。
「Inflector」とは?
Inflector クラスは文字列を扱い、複数形やキャメル記法といったように単語のバリエーションをハンドルする操作を行うものです。
例えば…
Inflector::pluralize('example');
上記の様なコードは「examples」という値を返します。(公式サイトより)
どんな時に便利?
CakePHPの命名規則に従って、単語を変換したい時などにとても便利です!
Inflector クラスのメソッドを使うことにより、以下の様な変換が簡単に行う事ができます。
代表的なメソッドをいくつか紹介いたします。
メソッド名 | 変換前 | 変換後 |
---|---|---|
pluralize | Apple | Apples |
singularize | Apples | Apple |
camelize | Apple_pie | ApplePie |
underscore | applePie | apple_pie |
humanize | apple_pie | Apple Pie |
tableize | Apples | apples |
classify | apples | Apple |
variable | apple_pies | applePies |
上記以外にも、以下の様な変換も行ってくれます。
メソッド名 | 変換前 | 変換後 |
---|---|---|
pluralize | Orange | Oranges |
Person | People | |
singularize | Oranges | Orange |
People | Person | |
camelize | orange_pekoe | OrangePekoe |
people_person | PeoplePerson | |
underscore | orangePekoe | orange_pekoe |
humanize | orange_pekoe | Orange Pekoe |
people_person | People Person | |
tableize | OrangeCake | orange_cakes |
people_person | people_people | |
classify | orange_cakes | OrangeCake |
people_people | PeoplePerson | |
variable | orange_pekoes | orangePekoes |
people_people | peoplePeople |
ぜひ、便利に使っていただければと思います。