类 TranslatorRegistry
构造并存储翻译器实例,可以通过名称和语言环境检索。
常量
-
字符串
FALLBACK_LOADER ¶'_fallback'
回退加载器名称。
属性摘要
-
$_cacher protected
Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface)|null
一个 CacheEngine 对象,用于在请求之间记住翻译器。
-
$_defaultFormatter protected
字符串
从回退加载器创建的新翻译器使用的默认格式化程序的名称
-
$_loaders protected
array<callable>
一个加载器函数列表,按域名称索引。加载器是可调用的,它们被调用作为默认值来构建翻译包,在这些包中无法找到翻译器名称和语言环境的组合。
-
$_useFallback protected
bool
对翻译加载器使用回退域。
-
$formatters protected
Cake\I18n\FormatterLocator
一个格式化器定位器。
-
$locale protected
字符串
当前语言环境代码。
-
$packages protected
Cake\I18n\PackageLocator
一个包定位器。
-
$registry protected
array<string, array<string,Cake\I18n\Translator>>
一个注册表,用于保留翻译器对象。
方法摘要
-
__construct() public
构造函数。
-
_getTranslator() protected
从注册表中获取特定语言环境的特定包的翻译器。
-
createInstance() protected
创建翻译器实例。
-
defaultFormatter() public
设置未来翻译器实例使用的默认消息格式化程序的名称。
-
get() public
从注册表中获取特定语言环境的特定包的翻译器。
-
getFormatters() public
类型为 FormatterLocator 的对象
-
getLocale() public
返回默认语言环境代码。
-
getPackages() public
返回翻译器包
-
registerLoader() public
为包名称注册一个加载器函数,该函数将在找不到具有该名称的包的情况下用作回退。
-
setCacher() public
设置用于在请求之间记住翻译器的 CacheEngine 实例。
-
setFallbackPackage() public
为包设置回退域。
-
setLoaderFallback() public
为加载器设置域回退。
-
setLocale() public
设置默认语言环境代码。
-
useFallback() public
设置是否使用默认域回退。
方法详情
__construct() ¶ public
__construct(Cake\I18n\PackageLocator $packages, Cake\I18n\FormatterLocator $formatters, string $locale)
构造函数。
参数
-
Cake\I18n\PackageLocator
$packages 包定位器。
-
Cake\I18n\FormatterLocator
$formatters 格式化器定位器。
-
string
$locale 要使用的默认语言环境代码。
_getTranslator() ¶ protected
_getTranslator(string $name, string $locale): Cake\I18n\Translator
从注册表中获取特定语言环境的特定包的翻译器。
参数
-
string
$name 要检索的翻译器包。
-
string
$locale 要使用的语言环境;如果为空,则使用默认语言环境。
返回
Cake\I18n\Translator
createInstance() ¶ protected
createInstance(string $name, string $locale): Cake\I18n\Translator
创建翻译器实例。
参数
-
string
$name 要检索的翻译器包。
-
string
$locale 要使用的语言环境;如果为空,则使用默认语言环境。
返回
Cake\I18n\Translator
defaultFormatter() ¶ public
defaultFormatter(string|null $name = null): string
设置未来翻译器实例使用的默认消息格式化程序的名称。
如果在没有参数的情况下调用,它将返回当前配置的值。
参数
-
string|null
$name optional 要使用的格式化程序的名称。
返回
字符串
get() ¶ public
get(string $name, string|null $locale = null): Cake\I18n\Translator|null
从注册表中获取特定语言环境的特定包的翻译器。
参数
-
string
$name 要检索的翻译器包。
-
string|null
$locale optional 要使用的语言环境;如果为空,则使用默认语言环境。
返回
Cake\I18n\Translator|null
抛出
Cake\I18n\Exception\I18nException
如果没有为给定的语言环境找到具有该名称的翻译器。
getFormatters() ¶ public
getFormatters(): Cake\I18n\FormatterLocator
类型为 FormatterLocator 的对象
返回
Cake\I18n\FormatterLocator
registerLoader() ¶ public
registerLoader(string $name, callable $loader): void
为包名称注册一个加载器函数,该函数将在找不到具有该名称的包的情况下用作回退。
加载器回调将获取包名称作为第一个参数,语言环境作为第二个参数。
参数
-
string
$name 要为其注册加载器的翻译器包的名称
-
callable
$loader 一个可调用对象,应该返回一个包
返回
void
setCacher() ¶ public
setCacher(Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface $cacher): void
设置用于在请求之间记住翻译器的 CacheEngine 实例。
参数
-
Psr\SimpleCache\CacheInterfaceCake\Cache\CacheEngineInterface
$cacher 缓存器实例。
返回
void
setFallbackPackage() ¶ public
setFallbackPackage(string $name, Cake\I18n\Package $package): Cake\I18n\Package
为包设置回退域。
参数
-
string
$name 包的名称。
-
Cake\I18n\Package
$package 包实例
返回
Cake\I18n\Package
setLoaderFallback() ¶ public
setLoaderFallback(string $name, callable $loader): callable
为加载器设置域回退。
参数
-
string
$name 加载器域的名称
-
callable
$loader 可调用加载器
返回
可调用
setLocale() ¶ public
setLocale(string $locale): void
设置默认语言环境代码。
参数
-
string
$locale 新的语言环境代码。
返回
void
useFallback() ¶ public
useFallback(bool $enable = true): void
设置是否使用默认域回退。
参数
-
bool
$enable optional 用于启用或禁用回退的标志
返回
void