laravel - Laravel 与碳的日期差异
问题描述
我正在尝试,send email three days before the expired date,
但我不知道该怎么做?
逻辑
- 检索剩余三天到期的所有订阅者
- 向他们的用户发送电子邮件
代码
表我需要检查命名的时间戳subscribes.
$subscribes = Subscribe::all();
此表有一个名为的列expires_at
,我需要检查它以查找3 days left.
还有我的邮件
Mail::to($user->email)->send(new SubscribeExpire($user, $subscribe));
我对这个碳计算的事情感到困惑,任何人都可以帮忙吗?
更新
根据下面的答案,我现在有了这个:
$subscribes = Subscribe::where('expires_at', Carbon::now()->subDays(3))->get();
$user = [];
$package = [];
foreach($subscribes as $subscribe){
$user = User::where('email', $subscribe->email);
$package = Package::where('id', $subscribe->package_id);
}
Mail::to($user->email)->send(new SubscribeExpire($user, $package));
但是当我运行命令时会出现此错误
ErrorException : Trying to get property 'email' of non-object
解决方案
使用subDays()方法,如下所示:
$subscribes = Subscribe::where('expires_at', Carbon::now()->subDays(3))->get();
推荐阅读
- python-3.x - 通过通过 Host on Demand 打开的 Python 访问 3270 会话
- angular - Jasmin + 业力:“错误:模块'DynamicTestModule'导入的意外值'HttpClient'。请添加@NgModule注释。”
- java - 如何比较同一 JSONObject 中的条目
- java - 将jsonobject数据写入xml标签
- android - 免安装应用 Firebase 远程配置不适用于免安装应用
- scala - Scala:如何在案例类构造函数中使用类型作为一等值?
- java - 试图在一个小游戏JAVA中缩短这个if-else语句
- javascript - 如何解决具有两个值的承诺?
- android - 服务器(AndroidWebServer)无法从 PC 访问
- entity-framework-core - 如何在 Auto-mapper ProjectTo 中处理空值