优势 / 周期查询
在 Laravel 中通过重叠和交集的周期进行查询
v1.0.1
2019-05-01 12:30 UTC
Requires (Dev)
- nesbot/carbon: ^1.36
- orchestra/testbench: ^3.5
This package is not auto-updated.
Last update: 2024-09-27 13:39:59 UTC
README
向你的 Illuminate\Database\Query\Builder 添加 overlaps 和 intersects 宏。
安装
只需 composer require vantage/period-queries
用法
<?php use Illuminate\Database\Eloquent\Model; class Event extends Model { /** * The attributes that should be mutated to dates. */ protected $dates = ['started_at', 'ended_at']; /** * The attributes that are mass assignable. */ protected $fillable = ['started_at', 'ended_at']; }
use Carbon\CarbonPeriod; $period = CarbonPeriod::create('2019-01-01', '2019-01-31'); Event::overlaps($period);
$start = new DateTime(2019, 1, 1); $end = new DateTime(2019, 1, 31); $period = new DatePeriod($start, 'P1D', $end); Event::intersects($period);
高级
Event::whereTitle($title)->orOverlaps($period);
Event::whereTitle($title)->orIntersects($period);
Event::overlaps($period, ['created_at', 'updated_at']);
贡献
composer install./vendor/bin/phpunit
