如何增加多维数组值

时间:2017-01-29 22:39:49

标签: php arrays laravel

一旦代码看到循环中有一个10或11的事件类型,我试图增加caps的值。我正在运行代码时收到偏移1错误,错误在$red_stats[$i]['caps'] = $red_stats[$i]['caps']+1行。

我正在尝试实现如下的结束数组结构:

$red_stats[$round]['caps']

我有以下代码(其他所有内容都会检出,但前面提到的行除外...作为补充说明,$round_count将评估为2,因此$i应评估为12

    $red_stats = [['caps'=>0]];
    array_pop($red_stats);

    for ($i = 1; $i <= $round_count; $i++)
    {
        foreach($events as $event)
        {
            if($event->event_type_id == 10 | $event->event_type_id == 11)
            {
                $red_stats[$i]['caps'] = $red_stats[$i]['caps'] + 1;
            }
        }
    }
    dd($red_stats);

1 个答案:

答案 0 :(得分:0)

您可能需要在if($ event ...)括号内执行此操作:

if (isset($red_stats[$i]['caps']) && array_key_exists('caps', $red_stats[$i]))
{
  $red_stats[$i]['caps']++;
}