Inflector

A classe Inflector recebe uma string e pode devolver variações da palavra, como suas versões em plural ou camelizada, sendo normalmente acessada de maneira estática. Por exemplo, Inflector::pluralize('exemplo') retorna “exemplos”.

Métodos de Classe

Entrada

Saída

pluralize

Apple, Laranja, Person, Pessoa, ...

Apples, Laranjas, People, Pessoas, ...

singularize

Apples, Laranjas, People, Pessoas, ...

Apple, Laranja, Person, Pessoa, ...

camelize

Apple_pie, alguma_coisa, people_person

ApplePie, AlgumaCoisa, PeoplePerson

underscore

Note-se que este método só irá converter palavras em formato camelCase. Palavras que contenham espaços serão convertidas em minúsculas, mas sem qualquer underscore.

applePie, algumaCoisa

apple_pie, alguma_coisa

humanize

apple_pie, alguma_coisa, people_person

Apple Pie, Alguma Coisa, People Person

tableize

Apple, UserProfileSetting, Person, Pessoa

apples, user_profile_settings, people, pessoas

classify

apples, user_profile_settings, people, pessoas

Apple, UserProfileSetting, Person, Pessoa

variable

apples, user_result, alguma_coisa, people_people

apples, userResult, algumaCoisa, peoplePeople

slug

Este método converte caracteres especiais em versões de caracteres latinos, além de tratar caracteres sem correspondentes, bem como converter espaços para underscores. O método slug uma entrada na codificação UTF-8.

apple purée

apple_puree

N.T.: Por padrão, os métodos da classe Inflector trabalham com regras de pluralização do idioma inglês. Salvo casos especiais (plurais irregulares), a conversão de uma palavra para seu plural dá-se apenas com a adição da letra -s (sufixo indicador de plural) ao final da palavra e que podem ser aplicar a algumas palavras da língua portuguesa (como em laranja/laranjas) mas não a várias outras (como em homem/homens).

As regras de pluralização são definidas no arquivo app/config/inflections.php. O plugin cake_ptbr adiciona (entre outras coisas) várias regras de pluralização para português do Brasil.