嗨,我正在尝试获得分钟差,它总是返回一个正整数,有没有办法我们可以获取整数值。 这是我尝试过的代码
$connections = ChatConnection::all();
foreach ($connections as $con) {
$monthdate = Carbon::parse($con->last_connected_at)->addMinute(5);
$dateDiff = Carbon::now()->diffInMinutes($monthdate);
$this->info($dateDiff);
}
$this->info($dateDiff);
,这将始终返回一个正整数。
如果消息连接已存在 5 分钟,我必须检查列发送推送通知。
有没有好办法?
默认情况下,diffInMinutes()
始终返回正整数。
为了得到差值的正负值,
您在diffInMinutes()
函数中添加false
参数,如下所示:
foreach ($connections as $con) {
$monthdate = Carbon::parse($con->last_connected_at)->addMinute(5);
$dateDiff = Carbon::now()->diffInMinutes($monthdate,false);
$this->info($dateDiff);
}
希望你能理解。
将last_connected_at
添加到模型中的$dates:protected $dates = ['last_connected_at'];
然后拉拉维尔总是回馈一个碳实例。
比你可以执行以下操作
$connections = ChatConnection::all();
foreach ($connections as $con) {
if($con->last_connected_at > Carbon::now()->subMinutes(5)){
// Code
}
}
或者重构到这个
$connections = ChatConnection::all();
$connections->each(function($con){
if($con->last_connected_at > Carbon::now()->subMinutes(5)){
// Code
}
});