mokhosh / jarbon

Jalali日期格式的Carbon包装器,用于与Laravel一起使用。

v0.3.0 2021-05-21 05:29 UTC

This package is auto-updated.

Last update: 2024-09-21 13:44:56 UTC


README

Jalali日期格式的Carbon包装器,用于与Laravel一起使用。

Version Size Total Downloads Issues Stars Forks MIT License

想法是向Carbon实例添加Jalali功能,而不引入破坏性更改。而且我并不急于在这里实现所有Carbon方法和功能。现在只是实现我在项目中需要的功能。

安装

通过composer

$ composer require mokhosh/jarbon

用法

您可以将任何Carbon实例转换为Jalali,如下所示

$user->created_at->jormat($format) // see links below to know more about date formats

如果您想使用格式辅助方法,也可以这样做,但这不是必需的

class User extends Model
{
    use JarbonTrait;
}

现在您可以这样输出Jalali日期

$user->created_at->toJString(); // 12:36:20 چهارشنبه 27 شهریور 1398
$user->created_at->toJDateString(); // 1398-06-27
$user->created_at->toJFormattedDateString(); // 27 شهریور 1398
$user->created_at->toJTimeString(); // 12:36:20 i know! but this will render in persian digits if you set the config
$user->created_at->toJDateTimeString(); // 1398-06-27 12:36:20 same as implicit toString in blade but you need to call this explicitly elsewhere
$user->created_at->toJDayDateTimeString(); // چهارشنبه 27 شهریور 1398 12:36 ب.ظ

发布配置文件

php artisan vendor:publish --tag=config
or in case I add more publishable stuff:
php artisan vendor:publish --provider="Mokhosh\Jarbon\JarbonServiceProvider"

帮助自己

// config/jarbon.php

return [

    'default_format' => 'Y-m-d H:i:s', // to render $carbon->jormat() differently
    'convert_numbers' => false, // set to true to get dates like چهارشنبه ۲۷ شهریور ۱۳۹۸ ۱۲:۳۶ ب.ظ

];

待办事项

  • 添加jarbon()辅助函数
  • 提供流畅的方法来覆盖单个实例的配置
  • 在实例中缓存Jalali日期,并跟踪Carbon的修改以在需要时动态地重新生成它
  • 与客户端Jalali日期选择器集成,以便在表单中输入Jalali日期时间
  • 用于操作Jalali和公历日期的辅助函数
  • 单元测试?
  • 还有什么?