【问题标题】:Laravel carbon and subDaysLaravel carbon 和 subDays
【发布时间】:2019-05-04 07:38:42
【问题描述】:

我正在尝试获取 created_at 日期超过 30 days 的用户列表,但它甚至获得了今天日期的用户。

逻辑

  1. 获取注册日期+30天的用户。
  2. 如果他们的验证日期为空,请删除他们。

问题

即使我今天注册并且我的验证日期为空,我的帐户也会删除。

代码

$date = Carbon::today()->subDays(30);

$deleteUsers = User::where('email_verified_at', null)->where('created_at', '>', $date)->delete();

【问题讨论】:

  • 逻辑应该小于日期,不能大于。
  • @Devon 让我试试 :D
  • @Devon 现在工作,谢谢。
  • @Devon 你应该把这个作为答案发布,这样它也能帮助其他人。

标签: laravel php-carbon


【解决方案1】:
$date=Carbon::today()->subDays(30);
$deleteUsers = User::where('email_verified_at', null)->where('created_at', '<', $date)->delete();

【讨论】:

  • 点评来源: 您好,请不要只回答源代码。尝试对您的解决方案如何工作提供一个很好的描述。见:How do I write a good answer?。谢谢
  • 它正在运行。谢谢大佬。
【解决方案2】:

如果它更小,我们会将这个日期代码与前一个进行比较 代码:

            $date=Carbon::now()->subDays(30)->format('Y-m-d');
            $t=Trash_form::where('updated_at','<=',$date)->value('id');
            return Trash_form::where('id',$t)->delete();

【讨论】:

  • 请在您的答案中添加一些解释,以便其他人可以从中学习。另外,App\Trash_form 来自哪里?这是一个内置功能,还是你随机添加了新类?
猜你喜欢
  • 2017-08-01
  • 2018-06-05
  • 2015-10-01
  • 1970-01-01
  • 2020-10-29
  • 2015-04-14
  • 1970-01-01
  • 2018-06-27
  • 2016-04-30
相关资源
最近更新 更多