anuzpandey/laravel-nepali-date

一个将英语日期(公元)转换为尼泊尔日期(巴利卡姆萨班)以及相反方向的Laravel包。

2.1.0 2024-08-31 19:10 UTC

This package is auto-updated.

Last update: 2024-08-31 19:14:23 UTC


README

Latest Version on Packagist GitHub Tests Action Status Total Downloads

LaravelNepaliDate是一个Laravel包,简化了格里高利(英语)和尼泊尔(巴利卡姆萨班)日历之间的日期转换。这个包是处理英语和尼泊尔格式日期的项目的一个方便工具,例如针对尼泊尔用户的网站和应用。

安装

您可以通过composer安装此包

composer require anuzpandey/laravel-nepali-date

可选地,您可以使用以下命令发布配置文件:

php artisan vendor:publish --tag="nepali-date-config"

用法

$engDate = '1996-04-22';
LaravelNepaliDate::from($engDate)->toNepaliDate();
// Result: 2053-01-10

LaravelNepaliDate::from($engDate)->toNepaliDate(format: 'D, j F Y');
// Result: सोम, १० वैशाख २०५३

// Format Specifiers are supported and listed below
LaravelNepaliDate::from($engDate)->toNepaliDate(format: 'D, j F Y', locale: 'en');
// Result: Mon, 10 Baisakh 2053


$nepDate = '2053-01-10';
LaravelNepaliDate::from($nepDate)->toEnglishDate();
// Result: 1996-04-22

LaravelNepaliDate::from($nepDate)->toEnglishDate(format: 'l, jS F Y');
// Result: Sunday, 22nd April 1996

// Format Specifiers are supported and listed below
LaravelNepaliDate::from($nepDate)->toEnglishDate(format: 'l, j F Y', locale: 'np');
// Result: आइतबार, २२ बैशाख १९९६

// Get total days in a month of a year
use Anuzpandey\LaravelNepaliDate\Enums\NepaliMonth;
// month can be NepaliMonth::XXX or month number (1-12)
LaravelNepaliDate::daysInMonth(NepaliMonth::BAISAKH, 2053);
// Result: 31

// Get total days in a year
LaravelNepaliDate::daysInYear(2053);
// Result: 365

格式说明符

以下格式说明符支持用于格式化日期:

  • Y - 四位数的年份
  • y - 两位数的年份
  • m - 带前导零的两位月份(01-12/०१-१२)
  • n - 带或不带前导零的一位或两位月份(1-12/१-१२)
  • M - 三个字母的月份(Jan-Dec)
  • F - 完整月份名称(January-December/बैशाख-चैत्र)
  • d - 带前导零的两位日期(01-31/०१-३२)
  • j - 带或不带前导零的一位或两位日期(1-31/१-३२)
  • D - 三个字母的日期(Sun-Sat/आइत-शनि)
  • l - 完整日期名称(Sunday-Saturday/आइतबार-शनिबार)
  • S - 两个字母的日期后缀(st, nd, rd, th)

通过NepaliDateMixin扩展Carbon

注意:由于Carbon不支持超过31天的月份,此功能已被弃用。该功能从2.0.0版本中删除。

辅助函数

// Convert English date to Nepali date (B.S.).
toNepaliDate("1996-04-22") 
// Result: 2053-01-10

// Convert Nepali date to English date (A.D.).
toEnglishDate("2053-01-10") 
// Result: 1996-04-22

测试

composer test

变更日志

有关最近更改的更多信息,请参阅变更日志

贡献

有关详细信息,请参阅贡献指南

安全漏洞

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

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件