我有两个时间戳,一个是我创建的时间戳,另一个是我创建的时间戳(Laravel)。。。在数据库中,两者都有类型时间戳和默认值0000-00-00:00:00。。。但是
var\u dump(在变量处编辑)
给出字符串。而var\u dump(在变量处创建)
是object/Carbon。这些时间戳有什么问题?
在使用格式('U')转换为整数后,我必须对两者进行比较。我只能在碳对象上调用此方法。我该怎么做?
首先,使用内置的雄辩功能转换时间戳,如本答案中所述。
然后您可以使用Carbon的min()
或max()
函数进行比较。例如:
$dt1=Carbon::create(2012, 1, 1, 0, 0, 0);$dt2=Carbon::create(2014, 1, 30, 0, 0, 0); echo$dt1-
这将
回显两个日期中较小的一个,在本例中为
$dt1
。
看http://carbon.nesbot.com/docs/
Carbon具有一系列具有助记名称的比较函数:
用法:
if($model->edited_at->greaterThan($model->created_at)){
// edited at is newer than created at
}
适用于nesbot/carbon 1.36.2
如果您不确定您使用的是什么碳素版本,请运行此命令
$composer show "nesbot/carbon"
文档:https://carbon.nesbot.com/docs/#api-比较
首先,雄辩自动将它的时间戳(created_at
,updated_at
)转换为碳对象。您可以使用updated_at
来获得这个好特性,或者在模型中的$date
属性中指定edited_at
:
protected $dates = ['edited_at'];
现在回到你的实际问题。碳具有一系列比较功能:
eq()
equalsne()
不等于 gt()
大于 gte()
大于或等于 lt()
小于 lte()
小于或等于用法:
if($model->edited_at->gt($model->created_at)){
// edited at is newer than created at
}
问题内容: 我尝试通过C#的JSON解析创建标记。我在javascript中有一个关于日期时间比较的小问题。 否则不起作用!谷歌地图上有truckOnline标记。我的错误在哪里? 和在SQL中这样的LastRecordTime格式:04.12.2013 01:03:00 问题答案: 穆罕默德 看来您打错了字: 应该是(请注意逗号): 另外,您试图从日期对象创建新的日期对象,这是不正确的: 这里是
问题内容: 我有两个。每个大小为100000。我想比较它们并计算匹配的元素。 这是我的代码: 在这里比较过程要花费很多时间。 如何解决和优化此问题。 问题答案: 您应该使用:返回一个包含collection1中所有元素的集合,这些元素也处于collection2中。
问题内容: 我有 以下格式的两个对象。 现在,我想将上述两个日期与时间进行比较。我应该如何在Java中进行比较。 谢谢 问题答案: 自实现以来,它很容易: 按照合同规定,如果分别被认为小于/等于/大于/大于(例如,在此之前/之前/之后),它将返回一个负整数/零/正整数。 请注意,还有和方法将改为返回布尔值。
问题内容: 我必须比较两个对象(不是)。比较它们的规范方法是什么? 我可以想到: 该运营商只比较基准,因此这将仅适用于较低的整数值的工作。但是也许自动装箱开始了…? 这看起来像一个昂贵的操作。是否以此方式计算出哈希码? 有点冗长… 编辑: 谢谢您的答复。尽管我现在知道该怎么办,但事实已分布在所有现有答案(甚至是已删除的答案)上,我也不知道该接受哪个答案。因此,我将接受最佳答案,即所有三种比较可能性
问题内容: 如何使用Python比较两个日期以查看稍后的日期? 例如,我想检查当前日期是否超过了我创建的假期日期列表中的最后日期,因此它将自动发送电子邮件,告诉管理员更新holiday.txt文件。 问题答案: 使用方法和运算符及其种类。
问题内容: 我想有一个compareTo方法,它忽略java.util.Date的时间部分。我想有很多方法可以解决这个问题。最简单的方法是什么? 问题答案: 虽然Joda Time当时是一个不错的建议,但请java.time尽可能使用Java 8+中的库。 我的首选是使用Joda Time,这使此操作变得异常简单: 编辑:如注释中所述,如果你使用DateTimeComparator.getDate