febripratama / terbilang
源自 https://github.com/riskihajar/terbilang 的分支
1.1
2022-08-30 09:58 UTC
Requires
- php: >=5.4.0
- illuminate/support: >=4.2
Requires (Dev)
- orchestra/testbench: ~3.0
This package is not auto-updated.
Last update: 2024-09-25 17:38:29 UTC
README
支持多语言将数字转换为文字。
支持的语言
id
| 印度尼西亚语en
| 英语pt
| 葡萄牙语- 即将推出
特性
用法
步骤 1: 通过 Composer 安装
composer require febripratama/terbilang
然后运行 composer update
对于 Laravel 4,请使用 1.0.4
版本
步骤 2: 添加提供者与别名
在 $providers
数组中添加此包的服务提供者。
Riskihajar\Terbilang\TerbilangServiceProvider::class,
将此包的外观添加到 $aliases
数组中。
'Terbilang' => Riskihajar\Terbilang\Facades\Terbilang::class,
步骤 3: 发布配置(可选)
如果您想自定义配置,可以运行以下命令来发布配置文件
php artisan vendor:publish --provider="Riskihajar\Terbilang\TerbilangServiceProvider"
示例
数字转文字
Terbilang::make($number, $suffix, $prefix)
如果设置语言环境为 en
Terbilang::make(1000000); // one million
如果设置语言环境为 id
Terbilang::make(1000000); // satu juta
前缀与后缀
如果设置语言环境为 id
Terbilang::make(123456, ' rupiah', 'senilai ');
// senilai seratus dua puluh tiga ribu, empat ratus lima puluh enam rupiah
如果设置语言环境为 en
Terbilang::make(654321, ' dollars');
// six hundred and fifty-four thousand, three hundred and twenty-one dollars
数字转罗马数字
Terbilang::roman($number, $lowercase=false)
Terbilang::roman(1234); //MCCXXXIV
数字简写
Terbilang::short($number, $format)
可用的简写: kilo, million, billion, trillion
默认值: million
如果设置语言环境为 en
Terbilang::short(1000000); // 1M
如果设置语言环境为 id
Terbilang::short(1000000); // 1jt
日期时间
日期 Terbilang::date($date, $format='Y-m-d');
$date = date('Y-m-d'); // 2015-03-31
Terbilang::date($date);
// Result : tiga puluh satu maret dua ribu lima belas
时间 Terbilang::time($date, $format='h:i:s');
$date = date('h:i:s'); //10:56:30
Terbilang::time($date);
// Result : sepuluh lewat lima puluh enam menit tiga puluh tiga detik
日期时间 Terbilang::datetime($date, $format='Y-m-d h:i:s');
$date = date('Y-m-d h:i:s'); // 2015-03-31 10:58:27
Terbilang::datetime($date);
// Result : tiga puluh satu maret dua ribu lima belas pukul sepuluh lewat lima puluh delapan menit dua puluh tujuh detik
使用 Carbon
如果使用 Carbon,可以忽略 $format
$dt = Carbon\Carbon::now('Asia/Makassar');
$date = Terbilang::date($dt);
$time = Terbilang::time($dt);
$datetime = Terbilang::datetime($dt);
周期
您可以使用方法 Terbilang::period($start, $end=null, $format=null)
来比较两个日期或仅一个日期,并与当前日期自动使用
周期格式配置
'period' => [
'type' => 'FULL',
'format' => '{YEAR} {MONTH} {DAY} {HOUR} {MINUTE} {SECOND}',
'hide_zero_value' => true,
'separator' => ' ',
'terbilang' => false,
'show' => [
'year' => true,
'month' => true,
'day' => true,
'hour' => true,
'minute' => true,
'second' => true,
]
],
周期示例
$date1 = date('Y-m-d', strtotime('2017-05-01')); // dateformat must Y-m-d H:i:s
$date2 = date('Y-m-d', strtotime('2017-06-15 09:30:15'));
// this method will diff $date1 with current datetime value for example current datetime : 2017-09-08 15:17:54
Terbilang::period($date1); // Result : 4 months 8 days 15 hours 17 minutes 54 seconds
Terbilang::period($date1, $date2); // Result : 1 months 15 days 9 hours 30 minutes 15 seconds
// if you set locale to id
Terbilang::period($date1, $date2); // Result : 1 bulan 15 hari 9 jam 30 menit 15 detik
// if you set config period.terbilang to true
Terbilang::period($date1, $date2); // Result : satu bulan lima belas hari sembilan jam tiga puluh menit lima belas detik
// if you set config period.type to DAY
Terbilang::period($date1, $date2); // Result : 45 hari
许可证
Riskihajar Terbilang 在 MIT 许可证 下授权。
版权 2017 riskihajar