W3cubDocs

/CakePHP 4.4

Class Inflector

Pluralize and singularize English words.

Inflector pluralizes and singularizes English nouns. Used by CakePHP's naming conventions throughout the framework.

Namespace: Cake\Utility
Link: https://book.cakephp.org/4/en/core-libraries/inflector.html

Property Summary

  • $_cache protected static
    array<string, mixed>

    Method cache array.

  • $_initialState protected static
    array

    The initial state of Inflector so reset() works.

  • $_irregular protected static
    array<string, string>

    Irregular rules

  • $_plural protected static
    array<string, string>

    Plural inflector rules

  • $_singular protected static
    array<string, string>

    Singular inflector rules

  • $_uninflected protected static
    array<string>

    Words that should not be inflected

Method Summary

  • _cache() protected static

    Cache inflected values, and return if already available

  • camelize() public static

    Returns the input lower_case_delimited_string as a CamelCasedString.

  • classify() public static

    Returns Cake model class name ("Person" for the database table "people".) for given database table.

  • dasherize() public static

    Returns the input CamelCasedString as an dashed-string.

  • delimit() public static

    Expects a CamelCasedInputString, and produces a lower_case_delimited_string

  • humanize() public static

    Returns the input lower_case_delimited_string as 'A Human Readable String'. (Underscores are replaced by spaces and capitalized following words.)

  • pluralize() public static

    Return $word in plural form.

  • reset() public static

    Clears Inflectors inflected value caches. And resets the inflection rules to the initial values.

  • rules() public static

    Adds custom inflection $rules, of either 'plural', 'singular', 'uninflected' or 'irregular' $type.

  • singularize() public static

    Return $word in singular form.

  • tableize() public static

    Returns corresponding table name for given model $className. ("people" for the model class "Person").

  • underscore() public static

    Returns the input CamelCasedString as an underscored_string.

  • variable() public static

    Returns camelBacked version of an underscored string.

Method Detail

_cache() protected static

_cache(string $type, string $key, string|false $value = false): string|false

Cache inflected values, and return if already available

Parameters

string $type

Inflection type

string $key

Original value

string|false $value optional

Inflected value

Returns

string|false

camelize() public static

camelize(string $string, string $delimiter = '_'): string

Returns the input lower_case_delimited_string as a CamelCasedString.

Parameters

string $string

String to camelize

string $delimiter optional

the delimiter in the input string

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-camelcase-and-under-scored-forms

classify() public static

classify(string $tableName): string

Returns Cake model class name ("Person" for the database table "people".) for given database table.

Parameters

string $tableName

Name of database table to get class name for

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-table-and-class-name-forms

dasherize() public static

dasherize(string $string): string

Returns the input CamelCasedString as an dashed-string.

Also replaces underscores with dashes

Parameters

string $string

The string to dasherize.

Returns

string

delimit() public static

delimit(string $string, string $delimiter = '_'): string

Expects a CamelCasedInputString, and produces a lower_case_delimited_string

Parameters

string $string

String to delimit

string $delimiter optional

the character to use as a delimiter

Returns

string

humanize() public static

humanize(string $string, string $delimiter = '_'): string

Returns the input lower_case_delimited_string as 'A Human Readable String'. (Underscores are replaced by spaces and capitalized following words.)

Parameters

string $string

String to be humanized

string $delimiter optional

the character to replace with a space

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-human-readable-forms

pluralize() public static

pluralize(string $word): string

Return $word in plural form.

Parameters

string $word

Word in singular

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-plural-singular-forms

reset() public static

reset(): void

Clears Inflectors inflected value caches. And resets the inflection rules to the initial values.

Returns

void

rules() public static

rules(string $type, array $rules, bool $reset = false): void

Adds custom inflection $rules, of either 'plural', 'singular', 'uninflected' or 'irregular' $type.

Usage:

Inflector::rules('plural', ['/^(inflect)or$/i' => '\1ables']);
Inflector::rules('irregular', ['red' => 'redlings']);
Inflector::rules('uninflected', ['dontinflectme']);

Parameters

string $type

The type of inflection, either 'plural', 'singular', or 'uninflected'.

array $rules

Array of rules to be added.

bool $reset optional

If true, will unset default inflections for all new rules that are being defined in $rules.

Returns

void

singularize() public static

singularize(string $word): string

Return $word in singular form.

Parameters

string $word

Word in plural

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-plural-singular-forms

tableize() public static

tableize(string $className): string

Returns corresponding table name for given model $className. ("people" for the model class "Person").

Parameters

string $className

Name of class to get database table name for

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-table-and-class-name-forms

underscore() public static

underscore(string $string): string

Returns the input CamelCasedString as an underscored_string.

Also replaces dashes with underscores

Parameters

string $string

CamelCasedString to be "underscorized"

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-camelcase-and-under-scored-forms

variable() public static

variable(string $string): string

Returns camelBacked version of an underscored string.

Parameters

string $string

String to convert.

Returns

string

Links

https://book.cakephp.org/4/en/core-libraries/inflector.html#creating-variable-names

Property Detail

$_cache protected static

Method cache array.

Type

array<string, mixed>

$_initialState protected static

The initial state of Inflector so reset() works.

Type

array

$_irregular protected static

Irregular rules

Type

array<string, string>

$_plural protected static

Plural inflector rules

Type

array<string, string>

$_singular protected static

Singular inflector rules

Type

array<string, string>

$_uninflected protected static

Words that should not be inflected

Type

array<string>

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Utility.Inflector.html