查询以根据数据库中不存在的变量获取数据?

Query to get data depending upon a variable not present in database?

我正在使用 backpack laravel,我正在尝试向那些订阅将在接下来的 7 天内到期的客户发送短信。

我的数据库中有一个列名称 expiry_date,但没有 day_difference 的列。

我找不到这个问题的解决方案,比如我应该如何形成这样的查询:

DB::table('clients')->where('expiry_date', 'is greater than 7 days from today_date')->first();

抱歉,这只是一个粗糙的补丁,我想让它公平。

这是我试过的

public function notifyPending() {
    $today_date = Carbon::now();
    $entries = Clients::all()->where('gym_code',Auth::user()->gym_code);

    foreach ($entries as $k => $entry) {

        $data_differences[] = $today_date->diffInDays(Carbon::parse($entry->expiry_date), false);

        for($i=0;$i<=sizeof($data_differences);$i++) {

            if ($data_differences[$i] = 7) {

            }

        }
    }


}

我将通过覆盖 crudcontroller 的列表视图在按钮上调用此函数。

so what I want is an array of mobile numbers which have there 7 days left in expiry of their subscription.

首先,您可以使用 PHP

获取 7 天后的日期
$diff=date('Y-m-d', strtotime("+7 days"));

然后您可以在查询中使用此 $diff 变量

where('expiry_date', $diff)