laravel 碳日期时间小时比较

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/46539534/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-14 16:44:53  来源:igfitidea点击:

Carbon Date Time Hours Comparison

phplaraveldatetimecomparephp-carbon

提问by Cookie

How do I compare the hours between these 2?

我如何比较这两个之间的时间?

$today = Carbon::now(new \DateTimeZone('Asia/Jakarta'))->toDateTimeString();

and

$last = EmergencyOrder::select('CreatedDate')
                        ->orderBy('CreatedDate', 'desc')
                        ->first();

采纳答案by aaron0207

From Carbon Docs

来自碳文档

$today =  Carbon::now(new \DateTimeZone('Asia/Jakarta'));
$last = Carbon::parse(EmergencyOrder::select('CreatedDate')
                    ->orderBy('CreatedDate', 'desc')
                    ->first()->CreatedDate); //if there are no records it will fail

//check for equal
var_dump($today->eq($last));                     // bool(false)
//check for not equal
var_dump($today->ne($last));                     // bool(true)
//check $today < $last
var_dump($today->gt($last));                     // bool(false)
//check $today <= $last
var_dump($today->gte($last));                    // bool(false)
//check $today > $last
var_dump($today->lt($last));                     // bool(true)
//check $today >= $last
var_dump($today->lte($last));                    // bool(true)

And if you need the diference

如果你需要差异

$today->diffInHours($last);
$today->diffInMinutes($last);
$today->diffInDays($last);

回答by Mr. Pyramid

better version of this answer

这个答案的更好版本

$today =  Carbon::now(new \DateTimeZone('Asia/Jakarta'));
$last = EmergencyOrder::select('CreatedDate')
                    ->orderBy('CreatedDate', 'desc')
                    ->first();
if($last) {
$createdDate = Carbon::parse($last->createdDate);
$today->diffInHours($createdDate);
$today->diffInMinutes($createdDate);
$today->diffInDays($createdDate);
}

this will not gonna give any error if it fails.

如果失败,这不会给出任何错误。