原始 / flexible-where-between
0.2
2020-11-26 16:35 UTC
Requires
- php: ^7.1
- illuminate/support: ~7.0|~8.0
Requires (Dev)
- orchestra/testbench: ^3.8|^4.0|^5.0|^6.0
- phpunit/phpunit: ^8.0|^9.0
README
我们创建了这个包,以避免在使用 Laravel 的 whereBetween 方法时在项目间重复代码。
例如,如果您正在寻找介于两个日期之间的“某物”,则没有此包的方法可能需要如下所示
$logs = Log::query(); if ((empty($end_date) && (empty($start_date)) { $logs = $logs->get(); } else if (empty($end_date)) { $logs = $logs->where('created_at','>=', $start_date); } else if (empty($start_date)) { $logs = $logs->where('created_at','<=', $end_date); } else { $logs = $logs->whereBetween('created_at', [$start_date, $end_date]) }
此包会为您处理这个逻辑。您的新方法将看起来像这样
Log::whereBetween('created_at', [$start_date, $end_date])
因此,无论 $start_date
或 $end_date
是 NULL
还是具有值,它都会“正常工作”。
安装
您可以通过 composer 安装此包
composer require primitive/flexible-where-between
使用
安装完包后,注册了一个 macro
,它覆盖了默认的 whereBetween
功能。所以,它“直接工作”。 :)
致谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。