$teamName, 'user' => [ [ 'user_id' => $users[$i]['user_id'], 'gender' => $users[$i]['gender'], 'avatar' => $users[$i]['avatar'], 'name' => $users[$i]['name'], ], [ 'user_id' => $users[$j]['user_id'], 'gender' => $users[$j]['gender'], 'avatar' => $users[$j]['avatar'], 'name' => $users[$j]['name'], ] ] ]); $users[$i]['team'] = $users[$j]['team'] = $teamName; } } // dd($team); // 对阵分配 $ttotal = count($team); df("共 $utotal 人:"); $n = 1; for ($i = 0; $i < $ttotal; $i++) { for ($j = $i + 1; $j < $ttotal; $j++) { if (array_intersect(array_column($team[$i]['user'], 'user_id'), array_column($team[$j]['user'], 'user_id'))) { continue;//一个人不能同时在两边队伍 } $math[] = [ 'gym_id' => $game['gym_id'], 'club_id' => $game['club_id'], 'act_id' => $game['act_id'], 'game_id' => $game['id'], 'level' => 1, //轮次 'turn' => $n, //场次 'teamA' => json_encode($team[$i]), //队伍A 'teamB' => json_encode($team[$j]), //队伍B ]; // $ta =array_column($team[$i]['user'],'user_id'); // $tb =array_column($team[$j]['user'],'user_id'); // df("第 $n 场:".$ta[0].'/'.$ta[1].' VS '.$tb[0].'/'.$tb[1]); $n++; } } // dd($math); $this->next($game, $math); return $math; } // 下一轮对阵安排 public function next($game, $math): array { $math = []; return $math; } // 奖金分配 public function prize($rank): array { return $rank; } }