What is the purpose of using a power function in the given PHP code for generating matches between teams?

The purpose of using a power function in the given PHP code for generating matches between teams is to ensure that each team plays against a different opponent in each round. By raising the team index to a power of 2, we can achieve unique pairings for each round of matches.

$teams = ['Team A', 'Team B', 'Team C', 'Team D'];

$rounds = count($teams) - 1;

for ($i = 0; $i < $rounds; $i++) {
    echo "Round " . ($i + 1) . ":\n";
    for ($j = 0; $j < count($teams) / 2; $j++) {
        $team1 = $teams[$j];
        $team2 = $teams[count($teams) - 1 - $j];
        echo $team1 . " vs " . $team2 . "\n";
    }
    
    // Rotate teams
    $firstTeam = $teams[0];
    array_shift($teams);
    array_push($teams, $firstTeam);
    
    echo "\n";
}