zaimealabs/metrics

ZaimeaLabs Metrics 包。

1.0 2024-06-26 13:19 UTC

This package is auto-updated.

Last update: 2024-09-27 12:49:53 UTC


README

Metrics

模型度量。

Metrics Tests License

嘿 👋 感谢您考虑捐款,有了这些捐款,我可以继续为 ZaimeaLabs 项目做出贡献。

Donate

用法

在配置中设置您的枚举

    php artisan vendor:publish --tag=metric

将 HasMetrics 特性添加到您的模型中

    use ZaimeaLabs\Metrics\HasMetrics;

    class User extends Authenticable
    {
        use HasMetrics;
    }

运行迁移以在数据库中创建度量表

    php artisan migrate

使用 Config 枚举

增加

    $user->incrementMetric(config('metric.enums.Logins'), 1);

减少

    $user->decrementMetric(config('metric.enums.Logins'), 1);

获取值

    $user->metrics()->where('name', 'logins')->value('value');

或使用枚举

创建您的枚举

    enum UserMetric: string
    {
        case Logins = 'logins';
    }

增加

    $user->incrementMetric(UserMetric::Logins->value, 1);

减少

    $user->decrementMetric(UserMetric::Logins->value, 1);

获取值

    $user->metrics()->where('name', 'logins')->value('value');

不要用月份、年份增加/减少

    $user->incrementMetric(UserMetric::Logins->value, 1, /*withDate*/ false);

    $user->decrementMetric(UserMetric::Logins->value, 1, /*withDate*/ false);

使用特定的月份、年份增加/减少

    $user->incrementMetric(UserMetric::Logins->value, /*withDate*/ 1, true, /*month*/ 04, /*year*/ 2023, /*day*/ 01);

    $user->decrementMetric(UserMetric::Logins->value, /*withDate*/ 1, true, /*month*/ 04, /*year*/ 2023, /*day*/ 01);