php foreach嵌套的坑

内层的$key与外层的$key用的是同一个变量,所以最后一句中$key的值并不是我们想要的值。

当嵌套使用foreach时,需要更换相应变量名。

$pinpointed[$key]['building_pinpointed'] = $sum;


            //计算 pinpointed 数目
            $pinpointed_num = 0;
            foreach ($pinpointed as $key => $building) {
                $room_arr = $building['room_nodes'];
                $sum = 0;
                foreach ($room_arr as $key => $room) {
                    $sum += $room['room_pinpointed'];
                }

                //为building pinpointed赋值
                $pinpointed[$key]['building_pinpointed'] = $sum;
            }


你可能感兴趣的:(PHP)