ageekdev/laravel-num

将Unicode数字转换为其他Unicode数字。

v1.3.0 2024-04-07 04:15 UTC

This package is auto-updated.

Last update: 2024-09-09 00:37:18 UTC


README

Latest Version on Packagist Laravel 9.x Laravel 10.x Laravel 11.x GitHub Tests Action Status Total Downloads

将Unicode数字转换为其他Unicode数字。

支持的语言

默认情况下,您可以转换英语、缅甸语和泰语数字。如果您想添加更多,您可以在config/num.php中添加零Unicode字符。您可以在zero-unicode.md中看到更多零Unicode字符

安装

您可以使用以下命令通过composer安装此包

composer require ageekdev/laravel-num

该包将自动注册自己。

发布配置和资产文件

php artisan vendor:publish --provider="AgeekDev\Num\NumServiceProvider"

使用

使用外观

直接从英语数字转换为缅甸数字

Num::convert('1234๑๒๓๔','mm','en'); 
// ၁၂၃၄๑๒๓๔

转换为缅甸数字

Num::toMyanmar('1234๑๒๓๔'); 
// ၁၂၃၄၁၂၃၄

转换为泰语数字

Num::toThai('1234'); 
// ๑๒๓๔

转换为英语数字

Num::toEnglish('၁၂၃၄'); 
// 1234

使用辅助工具

转换为缅甸数字

num_to_mm('1234'); 
// ၁၂၃၄

转换为泰语数字

num_to_th('1234');
// ๑๒๓๔

转换为英语数字

num_to_eng('၁၂၃၄');
// 1234

Laravel Num 允许您定义 "宏",这可以作为流畅、表达性的机制来配置字符串,在您的应用程序与各种服务交互时,从语言到语言进行转换。要开始,您可以在应用程序的 App\Providers\AppServiceProvider 类的 boot 方法中定义宏

use AgeekDev\Num\Facades\Num;
 
/**
 * Bootstrap any application services.
 *
 * @return void
 */
public function boot()
{
    Num::macro('toMyanmarShan', function (int|string|null $string, string $from = null) {
        return Num::convert($string, 'shan', $from);
    });
}

一旦您的宏配置完成,您可以从应用程序的任何位置调用它以使用指定配置转换数字

$numbers = Num::toMyanmarShan('1234567890');

// ႑႒႓႔႕႖႗႘႙႐

注意 如果转换的语言不在 num.php 中,您可以在 num 配置文件中配置此语言。

'zeros' => [
    'en' => 0,
    'mm' => '',
    'th' => '',
    'shan' => ''
],

测试

您可以使用以下命令运行测试

composer test

变更日志

请参阅变更日志以获取有关最近更改的更多信息。

贡献

请参阅贡献指南以获取详细信息。

安全漏洞

请查看我们的安全策略了解如何报告安全漏洞。

鸣谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。