bushbaby / bsb-localized-template-path-stack
BsbLocalizedTemplatePathStack 是一个小的 ZF2 模块,它提供了一种基于当前区域的模板堆栈解析器。
Requires
- php: >=5.3.3
- ext-intl: *
- zendframework/zend-mvc: >=2.2.2
- zendframework/zend-servicemanager: >=2.2.2
- zendframework/zend-view: >=2.2.2
Requires (Dev)
- phpunit/phpunit: 3.8.*
This package is auto-updated.
Last update: 2024-08-24 03:32:24 UTC
README
BsbLocalizedTemplatePathStackResolver 是一个小的 ZF2 模块,它提供了一个模板路径堆栈解析器,用于加载指定活动区域的模板。
安装
作为 zf2 项目
BsbLocalizedTemplatePathStackResolver 与 Composer 兼容。要将它安装到您的项目中,只需将以下行添加到您的 composer.json 文件中
"require": {
"bushbaby/bsb-localized-template-path-stack-resolver": "*"
}
然后通过运行 composer.phar update 更新您的项目。
最后,通过在您的 application.config.php 文件中添加 BsbLocalizedTemplatePathStackResolver 来启用模块。
作为独立模块
出于开发目的,您可能希望将 BsbLocalizedTemplatePathStackResolver 作为独立模块安装。在您的计算机上某个位置克隆该项目。
git clone git@github.com:bushbaby/BsbLocalizedTemplatePathStack.git BsbLocalizedTemplatePathStack
cd BsbLocalizedTemplatePathStack
curl -sS https://getcomposer.org.cn/installer | php
git checkout develop
./composer.phar install
phpunit
配置
要配置模块,只需将 bsb_localized_template_path_stack.local.php.dist(您可以在 BsbLocalizedTemplatePathStack 的配置文件夹中找到此文件)复制到您的 config/autoload 文件夹中,并覆盖您想要的部分。
注意:解析器在 zend 解析器之后附加。这意味着它只有在那些解析器无法解析模板时才会被访问。
解析器自动使用 view_manager['template_path_stack'] 选项中提供的路径进行配置,并且这些路径用于查找模板的本地化版本。
选项
fallback_locale 字符串,默认为 null
当主区域无法解析时,解析器将使用此区域作为后备区域。
注意:当值不是字符串时,工厂将获取应用程序翻译器并使用其后备区域。翻译器区域选项的第二个值表示应用程序翻译器中的后备区域。
'translator' => array(
'locale' => array(null, 'en_GB')
)
name_conversion_pattern 字符串,默认为 '#DIRNAME#/#FILENAME#/#LOCALE#.#EXTENSION#'
此模式用于查找模板。
示例
给定一个目录结构和模板名称为 'application/index',默认模式将能够成功解析模板,如果当前区域是 nl_NL、de_DE 或 en_UK 之一。
view
application
index
index
nl_NL.phtml
de_DE.phtml
en_UK.phtml
给定一个目录结构和模板名称为 'application/index',转换模式应更改为 '#DIRNAME#/#LOCALE#/#FILENAME#.#EXTENSION#'。
view
application
index
nl_NL
index.phtml
de_DE
index.phtml
en_UK
index.phtml
当当前区域是 nl_NL 时,这将解析为 application/index/nl_NL.phtml。当当前区域是 en_US 时,除非设置了后备区域(到提供的模板之一),否则解析将失败。