midnite81/timekeeper

一系列用于Laravel模型的与时间管理相关的作用域。

v1.0.1 2020-03-03 21:41 UTC

This package is auto-updated.

Last update: 2024-09-20 04:20:33 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

一系列用于Laravel模型的与时间管理相关的作用域。

请注意:此项目是一个正在进行中的作品。

关系图

Relationship Diagram

安装

此包需要PHP 5.6+和Laravel 5。

要通过Composer安装,请在您的composer.json中包含此包。

"midnite81/timekeeper": "0.2.*"

运行composer installcomposer update以下载依赖项,或者您可以直接运行composer require midnite81/timekeeper

Laravel 5集成

无需安装服务提供者。只需将特性包含到您需要使用的模型中即可。

示例用法

在您的模型中,只需添加您想要使用它的模型的use语句。

use Midnite81\TimeKeeper\Traits\TimeKeeper;

class YourModel
{
    use TimeKeeper;

    // ...

}

然后在控制器或服务中等引用它;

    public function check() {

        $overlap = YourModel::overlapsWith('2016-01-01 15:32:00', '2016-01-01 16:46:00')->exists();
        $after = YourModel::after('2016-01-01 10:00:00', 2016-01-01 11:00:00', 'start', 'end')->exists();

        // ...

    }

所有作用域都接受以下参数

  • 开始日期时间(yyyy-mm-dd hh:ii)
  • 结束日期时间(yyyy-mm-dd hh:ii)
  • 数据库中的开始时间列(可选,默认为start_time)
  • 数据库中的结束时间列(可选,默认为end_time)