Я пытаюсь получить общую сумму в таблице за определенный месяц, но я получил эту ошибку:

htmlspecialchars () ожидает, что параметр 1 будет строкой, объект задан

'currentmonthbilling' => object (Builder),

Название таблицы Биллингс

Я написал запрос

 $currentMonth = date('m');
            $currentmonthbilling = DB::table("billings")
            ->select(DB::raw("SUM(amount)"))
                        ->whereRaw('MONTH(created_at) = ?',[$currentMonth]);

Я хочу получить общую сумму, выплаченную всеми за текущий месяц

-1
user11352561 27 Май 2019 в 15:20

2 ответа

Лучший ответ

Чтобы получить результат запроса, вы должны добавить get() в конце.

Любить:

$currentMonth = date('m');
$currentmonthbilling = DB::table("billings")
       ->select(DB::raw("SUM(amount) as total"))
       ->whereRaw('MONTH(created_at) = ?',[$currentMonth])
       ->get();
1
Vikash Pathak 27 Май 2019 в 12:43

Используйте sum(DB::raw('amount')) вместо select(DB::raw("SUM(amount)"))

$currentMonth = date('m');
     $currentmonthbilling = DB::table("billings")
                              ->sum(DB::raw('amount'))
                              ->whereRaw('MONTH(created_at) = ?',[$currentMonth])->get();
1
Yogendra 27 Май 2019 в 12:35