yiisoft/translator-formatter-simple

此包已被弃用且不再维护。作者建议使用 yiisoft/translator 包代替。

Yii 翻译器简单消息格式化器

1.0.0 2021-05-13 10:46 UTC

This package is auto-updated.

Last update: 2022-09-05 21:04:05 UTC


README

此包已弃用,现在它是 yiisoft/translator 的一部分。

68747470733a2f2f796969736f66742e6769746875622e696f2f646f63732f696d616765732f7969695f6c6f676f2e737667

Yii 翻译器简单消息格式化器


Latest Stable Version Total Downloads Build status Scrutinizer Code Quality Code Coverage Mutation testing badge static analysis type-coverage

此包允许以简单模式格式化消息。在翻译消息时,您可以嵌入一些占位符,并由动态参数值替换它们。

要求

  • PHP 7.4 或更高版本。

安装

可以使用 composer 安装此包

composer require yiisoft/translator-formatter-simple --prefer-dist

配置

如果您使用 yiisoft/config,您将自动获得配置。如果没有,则需要以下依赖注入容器配置

<?php

declare(strict_types=1);

use Yiisoft\Translator\MessageFormatterInterface;
use Yiisoft\Translator\Formatter\Simple\SimpleMessageFormatter;

return [
    MessageFormatterInterface::class => SimpleMessageFormatter::class,
];

通用用法

yiisoft/translator 的使用示例

/** @var \Yiisoft\Translator\Translator $translator **/

$categoryName = 'moduleId';
$pathToModuleTranslations = './module/messages/';
$additionalCategory = new Yiisoft\Translator\CategorySource(
    $categoryName, 
    new \Yiisoft\Translator\Message\Php\MessageSource($pathToModuleTranslations),
    new \Yiisoft\Translator\Formatter\Simple\SimpleMessageFormatter()
);
$translator->addCategorySource($additionalCategory);

$translator->translate('Test string: {str}', ['str' => 'string data'], 'moduleId', 'en');
// output: Test string: string data

不使用 yiisoft/translator 包的使用示例

/** @var \Yiisoft\Translator\Formatter\Simple\SimpleMessageFormatter $formatter */
$pattern = 'Test number: {number}';
$params = ['number' => 5];
$locale = 'en';
echo $formatter->format($pattern, $params, $locale);
// output: Test number: 5

$pattern = 'Test string: {str}';
$params = ['str' => 'string data'];
echo $formatter->format($pattern, $params, $locale);
// output: Test string: string data 

测试

单元测试

此包使用 PHPUnit 进行测试。要运行测试

./vendor/bin/phpunit

突变测试

此包的测试使用 Infection 突变框架和 Infection 静态分析插件 进行检查。要运行它

./vendor/bin/roave-infection-static-analysis-plugin

静态分析

代码使用 Psalm 进行静态分析。要运行静态分析

./vendor/bin/psalm

许可

Yii 翻译器简单消息格式化器是免费软件。它根据 BSD 许可证发布。有关更多信息,请参阅 LICENSE

Yii 软件公司 维护。

支持项目

Open Collective

关注更新

Official website Twitter Telegram Facebook Slack