W3cubDocs

/CakePHP 4.4

Class TranslatorRegistry

Constructs and stores instances of translators that can be retrieved by name and locale.

Namespace: Cake\I18n

Constants

  • string
    FALLBACK_LOADER
    '_fallback'

    Fallback loader name.

Property Summary

  • $_cacher protected
    Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface)|null

    A CacheEngine object that is used to remember translator across requests.

  • $_defaultFormatter protected
    string

    The name of the default formatter to use for newly created translators from the fallback loader

  • $_loaders protected
    array<callable>

    A list of loader functions indexed by domain name. Loaders are callables that are invoked as a default for building translation packages where none can be found for the combination of translator name and locale.

  • $_useFallback protected
    bool

    Use fallback-domain for translation loaders.

  • $formatters protected
    Cake\I18n\FormatterLocator

    A formatter locator.

  • $locale protected
    string

    The current locale code.

  • $packages protected
    Cake\I18n\PackageLocator

    A package locator.

  • $registry protected
    array<string, array<string,Cake\I18n\Translator>>

    A registry to retain translator objects.

Method Summary

  • __construct() public

    Constructor.

  • _getTranslator() protected

    Gets a translator from the registry by package for a locale.

  • createInstance() protected

    Create translator instance.

  • defaultFormatter() public

    Sets the name of the default messages formatter to use for future translator instances.

  • get() public

    Gets a translator from the registry by package for a locale.

  • getFormatters() public

    An object of type FormatterLocator

  • getLocale() public

    Returns the default locale code.

  • getPackages() public

    Returns the translator packages

  • registerLoader() public

    Registers a loader function for a package name that will be used as a fallback in case no package with that name can be found.

  • setCacher() public

    Sets the CacheEngine instance used to remember translators across requests.

  • setFallbackPackage() public

    Set fallback domain for package.

  • setLoaderFallback() public

    Set domain fallback for loader.

  • setLocale() public

    Sets the default locale code.

  • useFallback() public

    Set if the default domain fallback is used.

Method Detail

__construct() public

__construct(Cake\I18n\PackageLocator $packages, Cake\I18n\FormatterLocator $formatters, string $locale)

Constructor.

Parameters

Cake\I18n\PackageLocator $packages

The package locator.

Cake\I18n\FormatterLocator $formatters

The formatter locator.

string $locale

The default locale code to use.

_getTranslator() protected

_getTranslator(string $name, string $locale): Cake\I18n\Translator

Gets a translator from the registry by package for a locale.

Parameters

string $name

The translator package to retrieve.

string $locale

The locale to use; if empty, uses the default locale.

Returns

Cake\I18n\Translator

createInstance() protected

createInstance(string $name, string $locale): Cake\I18n\Translator

Create translator instance.

Parameters

string $name

The translator package to retrieve.

string $locale

The locale to use; if empty, uses the default locale.

Returns

Cake\I18n\Translator

defaultFormatter() public

defaultFormatter(string|null $name = null): string

Sets the name of the default messages formatter to use for future translator instances.

If called with no arguments, it will return the currently configured value.

Parameters

string|null $name optional

The name of the formatter to use.

Returns

string

get() public

get(string $name, string|null $locale = null): Cake\I18n\Translator|null

Gets a translator from the registry by package for a locale.

Parameters

string $name

The translator package to retrieve.

string|null $locale optional

The locale to use; if empty, uses the default locale.

Returns

Cake\I18n\Translator|null

Throws

Cake\I18n\Exception\I18nException
If no translator with that name could be found for the given locale.

getFormatters() public

getFormatters(): Cake\I18n\FormatterLocator

An object of type FormatterLocator

Returns

Cake\I18n\FormatterLocator

getLocale() public

getLocale(): string

Returns the default locale code.

Returns

string

getPackages() public

getPackages(): Cake\I18n\PackageLocator

Returns the translator packages

Returns

Cake\I18n\PackageLocator

registerLoader() public

registerLoader(string $name, callable $loader): void

Registers a loader function for a package name that will be used as a fallback in case no package with that name can be found.

Loader callbacks will get as first argument the package name and the locale as the second argument.

Parameters

string $name

The name of the translator package to register a loader for

callable $loader

A callable object that should return a Package

Returns

void

setCacher() public

setCacher(Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface $cacher): void

Sets the CacheEngine instance used to remember translators across requests.

Parameters

Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface $cacher

The cacher instance.

Returns

void

setFallbackPackage() public

setFallbackPackage(string $name, Cake\I18n\Package $package): Cake\I18n\Package

Set fallback domain for package.

Parameters

string $name

The name of the package.

Cake\I18n\Package $package

Package instance

Returns

Cake\I18n\Package

setLoaderFallback() public

setLoaderFallback(string $name, callable $loader): callable

Set domain fallback for loader.

Parameters

string $name

The name of the loader domain

callable $loader

invokable loader

Returns

callable

setLocale() public

setLocale(string $locale): void

Sets the default locale code.

Parameters

string $locale

The new locale code.

Returns

void

useFallback() public

useFallback(bool $enable = true): void

Set if the default domain fallback is used.

Parameters

bool $enable optional

flag to enable or disable fallback

Returns

void

Property Detail

$_cacher protected

A CacheEngine object that is used to remember translator across requests.

Type

Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface)|null

$_defaultFormatter protected

The name of the default formatter to use for newly created translators from the fallback loader

Type

string

$_loaders protected

A list of loader functions indexed by domain name. Loaders are callables that are invoked as a default for building translation packages where none can be found for the combination of translator name and locale.

Type

array<callable>

$_useFallback protected

Use fallback-domain for translation loaders.

Type

bool

$formatters protected

A formatter locator.

Type

Cake\I18n\FormatterLocator

$locale protected

The current locale code.

Type

string

$packages protected

A package locator.

Type

Cake\I18n\PackageLocator

$registry protected

A registry to retain translator objects.

Type

array<string, array<string,Cake\I18n\Translator>>

© 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.I18n.TranslatorRegistry.html