我想知道如何获得课程持续时间还剩多少天。
course-duration
只是一列,在数据库中像30
一样保存一个整数。
我想将course-duration
与created_at
进行比较,并把在laravel剩下的日子归还给我。
id username course course-duration(days) created_at
---------------------------------------------------------------------
1 krish SSB 14 2018-11-19
---------------------------------------------------------------------
2 Brij SSB 30 2018-11-18
---------------------------------------------------------------------
3 Sagar SSB 90 2018-11-15
在比较course-duration
和created_at
之后,我想获得课程的剩余天数。
答案 0 :(得分:1)
您可以像这样获得剩余的日子:
\DB::statement("SELECT (course-duration - DATEDIFF(NOW(), created_at)) remained FROM your_table");
答案 1 :(得分:0)
您可以使用Carbon来获取created_at和now之间的天数
$diff_from_now = Carbon::parse($course->created_at)->diffInDays();
$course_duration = $course->duration;
$remaining_days = $course_duration- $diff_from_now;
答案 2 :(得分:0)
尝试这个
Select sub(course-duration - DATE(created_at)) as left_days from table_name;
答案 3 :(得分:0)
只需在您的Course
模型中定义一个方法即可计算每门课程的剩余天数:
class Course extends Model
{
public function remainingDays() {
return $this->course-duration - $this->created_at->diffInDays(Carbon::now());
}
}
并获取每门课程的剩余天数:
$course->remainingDays();