pinoox/numera

翻译 Numera

安装次数: 1,332

依赖: 0

建议: 0

安全: 0

星星: 15

关注者: 0

分支: 2

开放问题: 2

类型:项目

1.1.2 2024-05-01 10:24 UTC

This package is auto-updated.

Last update: 2024-08-31 00:28:30 UTC


README

Latest Stable Version GitHub Stars GitHub Forks GitHub Issues License Total Downloads

Numera 是一个 PHP 库,它提供了一个简单高效的方法将数字转换为文字以及相反操作。它支持多种语言,并且可以轻松扩展以支持更多语言。

特性

  • 将数字转换为文字(例如,1234 转换为 "一千二百三十四")
  • 将文字转换为数字(例如,"一千二百三十四" 转换为 1234)
  • 支持多种语言(目前有英语和波斯语,还将有更多语言加入)
  • 支持输出文字的驼峰式命名
  • 易于使用和扩展

安装和配置

通过 Composer 安装

您可以使用 Composer 安装 Numera

composer require pinoox/numera

初始化 Numera

要使用 Numera,您需要用区域初始化它。您可以使用 init 方法完成此操作

use Pino\Numera;

$numera = Numera::init('en'); // Initialize with English locale

将数字转换为文字

要将数字转换为文字,请使用 convertToWords 方法

$result = $numera->convertToWords(4454545156);
echo $result; // Output: "four billion, four hundred fifty-four million, five hundred forty-five thousand, one hundred fifty-six"

或者,您还可以使用更简单的语法使用 n2w 方法

$result = $numera->n2w('4,454,545,156');
echo $result; // Output: "four billion, four hundred fifty-four million, five hundred forty-five thousand, one hundred fifty-six"

将数字转换为摘要

要将数字转换为摘要文字,请使用 convertToSummary 方法

$result = $numera->convertToSummary(4454545156);
echo $result; // Output: "4 Billion, 454 Million, 545 Thousand, 156"

或者,您还可以使用更简单的语法使用 n2w 方法

$result = $numera->n2s('4,454,545,156');
echo $result; // Output: "4 Billion, 454 Million, 545 Thousand, 156"

将文字转换为数字

要将文字转换为数字,请使用 convertToNumber 方法

$result = $numera->convertToNumber('four billion, four hundred fifty-four million, five hundred forty-five thousand, one hundred fifty-six');
echo $result; // Output: 4454545156

或者,您还可以使用更简单的语法使用 w2n 方法

$result = $numera->w2n("4 Billion, 454 Million, 545 Thousand, 156");
echo $result; // Output: 4454545156

您还可以为 w2n 方法指定分隔符

$result = $numera->w2n('four billion, four hundred fifty-four million, five hundred forty-five thousand, one hundred fifty-six', [' ', ',']);
echo $result; // Output: 4454545156

使用驼峰式命名

要为输出文字使用驼峰式命名,请使用 setCamelCase 方法

$numera->setCamelCase(true);
$result = $numera->convertToWords('4,454,545,156');
echo $result; // Output: "Four Billion, Four Hundred Fifty-Four Million, Five Hundred Forty-Five Thousand, One Hundred Fifty-Six"

支持的语言

Numera 当前支持以下语言

  • 英语 (en)
  • 波斯语 (fa)

设置区域

要设置 Numera 对象的区域,请使用 setLocale 方法

$numera->setLocale('fa'); // Set locale to Persian

设置区域回退

要设置 Numera 对象的区域回退,请使用 setLocaleFallback 方法

$numera->setLocaleFallback('en'); // Set fallback locale to English

获取翻译

要获取当前区域的翻译,请使用 getTranslates 方法

$translates = $numera->getTranslates();
print_r($translates); // Output: Array of translates for the current locale

添加翻译

要为特定区域添加翻译,请使用 addTranslate 方法

$numera->addTranslate('fr', ['four' => 'quatre']); // Add French translates

添加翻译文件

要为特定区域通过数组文件添加翻译,请使用 addTranslateFile 方法

$numera->addTranslateFile('fr','/path/lang/fr.php'); // Add French translates

创建新语言

如果您想添加对新的语言的支持,请阅读我们的 翻译指南,其中包含如何创建新的语言包的逐步指南。

作者

Numera 由 Pinoox 创建。

贡献

如果您想为 Numera 做出贡献,请将其仓库分叉并提交一个拉取请求。我们非常欢迎您的帮助。

文档

许可证

Numera 在 MIT 许可证 下发布。请参阅 LICENSE 文件以获取更多信息。