当前位置: 首页 > 知识库问答 >
问题:

Laravel将数据库中的字符串日期与碳日期进行比较

鲍建业
2023-03-14

我犯了一个错误,在数据库中将日期存储为VARCHAR,这里看起来是2018年12月2日,我使用carbon创建了一个变量来获取14天的当前日期。

$current\u date\u plus\u 14=Carbon::now()-

问题是

我试图将数据库中存储为VARCHAR的2018年12月2日与我使用碳生成的2017年4月9日进行比较。

雄辩的代码

$gquery=Client::where('required_date','

我得到的

它没有得到任何结果,因为它只比较了所需的_日期中的一天和碳日期中的一天。

而它应该返回值,因为存在超过1年的差异?


共有2个答案

计胤
2023-03-14

即使您的字段是VARCHAR而不是DATETIMEDATE,您仍然可以通过将属性名称添加到$date来将其标记为Eloquent模型中的日期。您还必须更改模型的$dateFormat,因为您有一个非Y-m-d H: i: s格式。

景景胜
2023-03-14

尝试使用此函数将日期转换为字符串(可以与varchar一起使用)到实际日期

private function convertDateString($date)
{
    if (is_string($date)) {
        $date = Carbon::parse($date,new DateTimeZone('YOUR_DATE_TIME_ZONE'));
    }

    return $date;
}
 类似资料:
  • 我有一个JSON对象,它有几个日期,例如:15/12/2005或14/12/2012。 我需要将月份和日期与今天的月份和日期进行比较;年份无关紧要。我正在这样做: 这会选择日期,但返回2000-12-15。我只想要日期和月份。 什么时候会比较下一个方法 虽然当前日期匹配,但测试不通过。

  • 我使用以下sql将字符串与日期oracle进行比较,但得到的结果不正确。我尝试了to\u date、to\u char选项,但没有得到任何正确的结果。 地点日期1:10-JUN-2101.00.00.000000000 AM日期2:10-JUN-2021 01:00 上述sql返回上述Date1和Date2的行,尽管它们相等。Date1也是varchar格式,Date2是带有本地时区格式的时间戳(

  • 因此,我正在研究如何用javascript中的字符串进行日期比较,我发现大量堆栈溢出的帖子说你不能这样做。 参考: 如何在JavaScript中比较两个字符串日期? 用JavaScript比较两个日期 然而,下面的代码本与您所期望的完全一样,只使用字符串,当其中一个是YYYY-MM-DD而另一个是yyyy/mm/dd时,它甚至可以工作。有谁能解释一下为什么这样做,为什么stack overflow

  • 问题内容: 如何将字符串日期格式转换为日期,我的日期字符串格式为 接下来,我没有运气尝试。 以上所有语句都给出了解析错误。 问题答案: 请阅读的文档time.Parse: 该布局通过显示参考时间(定义为 2006年1月2日星期一15:04:05-0700 如果它是值,将被解释;它用作输入格式的示例。然后将对输入字符串进行相同的解释。 所以正确的格式是

  • 我正试图在过期日期前三天,但我不知道如何发送? 思维方式 检索剩余三天到期的所有订阅者 发送电子邮件给他们的用户 代码 表我需要检查名为 这个表有一个名为的列,我需要检查它以找到

  • 问题内容: 所以我正在使用它根据每个字符的Unicode值与字符串进行字典顺序比较,并返回一个整数。这是一个代码示例。 在Java中比较日期是否错误? 在测试中,我没有遇到意外结果的情况。如果不是必须的话,我真的不想在字符串中创建Date对象,因为我是在一个长时间运行的循环中执行此操作的。 *根据下面的答案, *Ninja Edit Gleaning可以将日期与字符串进行比较,如果格式正确,则没有