碳:仅按日期区分两个日期时间对象

时间:2017-07-27 19:24:16

标签: php laravel php-carbon

假设我有以下代码:

SELECT * from table LIMIT 1000

如何仅在日期之间获取$now = Carbon::now(); $dateTimeObject = Carbon::parse('2017-07-20 10:16:34'); ,忽略时间因素?

所以,如果diff是2017-07-27 09:11:12,而$now中的日期是2017-07-20 - 则差异为$dateTimeObject

我需要它来确保特定操作的结果每天只存储在数据库中一次。

注意:

我尝试了7方法,但如果值为例如,则返回diffInDays() 02016-10-12 23:56:43 - 所以,接近午夜和晚上。

2 个答案:

答案 0 :(得分:12)

做这样的事情:

$now = Carbon::now()->startOfDay();
$dateTimeObject = Carbon::parse('2017-07-20 10:16:34')->startOfDay();

现在使用diffInDays()

答案 1 :(得分:0)

Carbon::isSameDay 方法将检查给定日期是否与实例在同一天。如果传入 null,则与现在进行比较(具有相同的时区)。

$dateTimeObject = Carbon::parse('2017-07-20 10:16:34');

$is_same = $dateTimeObject->isSameDay();