phpviet / yii-number-to-words
Yii number to words 支持将数字转换为越南语数字
1.0.0
2019-06-07 05:23 UTC
Requires
- php: ^7.1
- phpviet/number-to-words: ^1.0
- yiisoft/yii2: ~2.0.13
Requires (Dev)
- phpunit/phpunit: ~7.5
- scrutinizer/ocular: ^1.5
This package is auto-updated.
Last update: 2024-09-15 17:59:21 UTC
README
Yii Number To Words
信息
Yii number to words 支持将数字转换为越南语数字。
安装
通过 Composer 安装 Yii Number To Words
composer require phpviet/yii-number-to-words
使用方法
扩展功能
数字转换为数字
- 通过 helper
phpviet\yii\numberToWords\N2WHelper
使用
use phpviet\yii\numberToWords\N2WHelper; // âm năm N2WHelper::toWords(-5); // năm N2WHelper::toWords(5); // năm phẩy năm N2WHelper::toWords(5.5);
- 通过
n2w
组件使用
// mười lăm Yii::$app->n2w->toWords(15); // một trăm linh năm Yii::$app->n2w->toWords(105); // hai mươi tư Yii::$app->n2w->toWords(24);
数字转换为货币
- 通过 helper
phpviet\yii\numberToWords\N2WHelper
使用
use phpviet\yii\numberToWords\N2WHelper; // năm triệu sáu trăm chín mươi nghìn bảy trăm đồng N2WHelper::toCurrency(5690700);
- 通过
n2w
组件使用
// chín mươi lăm triệu năm trăm nghìn hai trăm đồng Yii::$app->n2w->toCurrency(95500200);
此外,我们还可以通过 helper 和 component 中的 toCurrency
方法的第二个参数使用其他货币单位,其中数组的第一个元素是整数部分的单位,接下来是小数部分的单位
use phpviet\yii\numberToWords\N2WHelper; // sáu nghìn bảy trăm bốn mươi hai đô bảy xen N2WHelper::toCurrency(6742.7, ['đô', 'xen']); // chín nghìn bốn trăm chín mươi hai đô mười lăm xen Yii::$app->n2w->toCurrency(9492.15, ['đô', 'xen']);
更改数字的读法
如果您觉得上面的读法已经很好,则可以跳过此步骤。
首先,要更改数字的读法,请配置 app config 文件中的 n2w
component
'components' => [ 'n2w' => [ 'class' => 'phpviet\yii\numberToWords\N2W', 'dictionary' => 'standard', 'dictionaries' => [ 'standard' => PHPViet\NumberToWords\Dictionary::class, 'south' => PHPViet\NumberToWords\SouthDictionary::class ] ] ];
现在,您可以将 dictionary
从 standard
更改为 south
,这样所有数字到数字和货币的转换都将按照南方的风格进行阅读
use phpviet\yii\numberToWords\N2WHelper; // một trăm linh một => một trăm lẻ một N2WHelper::toWords(101); // một nghìn => một ngàn N2WHelper::toWords(1000); // hai mươi tư => hai mươi bốn N2WHelper::toWords(24); // một trăm hai mươi tư nghìn không trăm linh một đồng => một trăm hai mươi bốn ngàn không trăm lẻ một đồng N2WHelper::toCurrency(124001);
或者您想更灵活地指定字典
use phpviet\yii\numberToWords\N2WHelper; // một trăm hai mươi tư nghìn không trăm linh một N2WHelper::toWords(124001); // một trăm hai mươi bốn ngàn không trăm lẻ một N2WHelper::toWords(124001, 'south');
如果您想根据您的意愿更改读法,则可以创建一个继承自 PHPViet\NumberToWords\Dictionary
的 Dictionary
类,或者实现抽象类 PHPViet\NumberToWords\DictionaryInterface
use PHPViet\NumberToWords\Dictionary; use PHPViet\NumberToWords\Transformer; class MyDictionary extends Dictionary { /** * @inheritDoc */ public function specialTripletUnitFive(): string { return 'nhăm'; } }
然后声明到 config
'components' => [ 'n2w' => [ 'class' => 'phpviet\yii\numberToWords\N2W', 'dictionary' => 'my', 'dictionaries' => [ 'standard' => PHPViet\NumberToWords\Dictionary::class, 'south' => PHPViet\NumberToWords\SouthDictionary::class, 'my' => MyDictionary::class ] ] ];
然后尝试一下
use phpviet\yii\numberToWords\N2WHelper; // mười nhăm N2WHelper::toWords(15);
面向开发者
如果您觉得扩展缺少或错误,并且您想共同开发,我们非常欢迎!请创建 issue
来为下一个版本贡献想法,或者创建 PR
来贡献。谢谢!