yiisoft / i18n-message-gettext
Yii 翻译器 gettext 消息存储
1.1.0
2022-11-08 07:19 UTC
Requires
- php: ^8.0
- ext-gettext: *
- yiisoft/translator: ^1.0|^2.0
Requires (Dev)
- maglnet/composer-require-checker: ^4.2
- phpunit/phpunit: ^9.5
- rector/rector: ^0.14.3
- roave/infection-static-analysis-plugin: ^1.16
- spatie/phpunit-watcher: ^1.23
- vimeo/psalm: ^4.18
This package is auto-updated.
Last update: 2024-09-22 15:23:17 UTC
README
Yii 翻译器 gettext 消息存储
该包提供了一个基于 gettext 文件格式的消息存储后端,用于与 yiisoft/translator
包一起使用。
要求
- PHP 8.0 或更高版本。
gettext
PHP 扩展。
安装
该包可以使用 Composer 安装。
composer require yiisoft/translator-message-gettext
注意
当使用 gettext 时,locale
取决于您的操作系统要求
- 对于 Windows
'locale' => 'en-US.UTF-8'
- 对于 Linux
'locale' => 'en_US.UTF-8'
通用用法
该包旨在与 yiisoft/translator
一起使用。
use Yiisoft\Translator\CategorySource; use Yiisoft\Translator\Message\Gettext\MessageSource; $categorySource = new CategorySource( 'my-category', new MessageSource('/path/to/messages'), );
以下示例展示了如何单独使用它。
创建 MessageSource 实例
/** @var string $path - path to your gettext storage */ $messageSource = new \Yiisoft\Translator\Message\Gettext\MessageSource($path);
不使用 yiisoft/translator
包读取消息
/** * @var \Yiisoft\Translator\Message\Gettext\MessageSource $messageSource * @var ?string $translatedString */ $id = 'messageIdentificator'; $category = 'messages'; $language = 'de-DE'; $translatedString = $messageSource->getMessage($id, $category, $language);
您可以使用第三方软件(例如 Poedit)创建您的 .mo 格式翻译
推荐的结构化您的 gettext 存储
-- path_to_your_storage
-- de_DE
-- LC_MESSAGES
-- messages.mo
文档
如果您需要帮助或有任何问题,您可以在 Yii 论坛 找到答案。您还可以查看其他 Yii 社区资源。
许可
Yii 翻译器 gettext 消息存储是免费软件。它根据 BSD 许可证的条款发布。有关更多信息,请参阅 LICENSE
。
由 Yii 软件 维护。