motion / yii2-language-provider
此软件包为Yii2框架的语言提供程序提供接口
2.1.0
2018-01-19 21:58 UTC
Requires
- yiisoft/yii2: ~2.0.13
Requires (Dev)
- codeception/codeception: ~2.0
This package is not auto-updated.
Last update: 2024-09-15 04:31:27 UTC
README
此软件包为从任何存储访问应用语言提供接口,适用于Yii2框架。它允许您创建多语言模块,用于在基于Yii2的应用中使用。例如,您可以通过yii2-email-template扩展了解模块的集成。
开箱即用的功能
如果您想创建自己的语言提供程序实现,应实现接口 motion\i18n\LanguageProviderInterface
。
安装
安装此扩展的首选方法是使用composer。
运行以下命令
$ composer require motion/yii2-language-provider
或将以下内容添加到您的 composer.json
文件的 require
部分:
"motion/yii2-language-provider": "~2.1"
使用方法
配置语言提供程序
示例
$config = [ 'languages' => [ [ 'label' => 'English', 'locale' => 'en', ], [ 'label' => 'Ukrainian', 'locale' => 'uk', ], [ 'label' => 'Russian', 'locale' => 'ru', ], ], 'defaultLanguage' => [ 'label' => 'English', 'locale' => 'en', ], ]; $provider = new \motion\i18n\ConfigLanguageProvider($config); $provider->getLanguages(); // returns list of languages $provider->getDefaultLanguage(); // returns default language $provider->getLanguageLabel('en'); // returns language label by locale (`English`)
数据库语言提供程序
示例
$config = [ 'db' => 'secondDb', 'labelField' => 'title', ]; $provider = new \motion\i18n\DbLanguageProvider($config); $provider->getLanguages(); // returns list of languages $provider->getDefaultLanguage(); // returns default language $provider->getLanguageLabel('uk'); // returns language label by locale
测试
您可以使用composer命令运行测试
$ composer test
或使用以下命令:
$ codecept build && codecept run
许可证
本项目根据BSD-3-Clause许可证发布。
版权所有 (c) 2017-2018, Motion Web Production