Я получаю пустую переменную после того, как я делаю foreach в laravel - PullRequest
0 голосов
/ 01 марта 2019

Я получаю пустой результат, когда на самом деле я должен получить 3500

 $transcationhist = Transcationhistorique::whereDate('created_at', Carbon::today())->pluck('ammount');

 $ammount = 0 ;

 foreach ($transcationhist as $p) {

    $ammount = $ammount + $p['ammount'];

 }

Ответы [ 2 ]

0 голосов
/ 01 марта 2019

Pluck вернет плоский массив в вашем случае, используйте его следующим образом:

$transcationhist = Transcationhistorique::whereDate('created_at', Carbon::today())->pluck('ammount');

 $ammount = 0 ;

 foreach ($transcationhist as $p) {

    $ammount += $p;

 }
0 голосов
/ 01 марта 2019

Если вы хотите суммировать сумму, используйте этот код

$ammount = Transcationhistorique::whereDate('created_at', Carbon::today())->sum('ammount');

или вы можете использовать

$transcationhist = Transcationhistorique::whereDate('created_at', Carbon::today())
    ->pluck('ammount');
$ammount = $transcationhist->sum();

И, наконец, если вы хотите использовать foreach, используйте этот код

$transcationhist = Transcationhistorique::whereDate('created_at', Carbon::today())
    ->get(['ammount']);

 $ammount = 0 ;

 foreach ($transcationhist as $p) {
    $ammount = $ammount + $p['ammount']; // or $p->ammount
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...