3v4l.org

run code in 300+ PHP versions simultaneously
<?php $playersWithPosition = [[ 'username' => 'Exampleusername', 'score' => '74' ],[ 'username' => 'ExampleUsername', 'score' => '14' ],[ 'username' => 'exampleusername', // WINNER 'score' => '96' ]]; $leaderboard = static function(array $players) { $leaders = []; foreach($players as $player) { $leaders[(int) $player['score']] = $player['username']; } ksort($leaders); // Higher score is better, so reverse order. return array_values(array_reverse($leaders)); }; $leading = static function(array $players) use(&$leaderboard): ?string { return $leaderboard($players)[0] ?? null; }; var_dump($leaderboard($playersWithPosition), $leading($playersWithPosition));
Output for 7.1.25 - 7.1.33, 7.2.17 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
array(3) { [0]=> string(15) "exampleusername" [1]=> string(15) "Exampleusername" [2]=> string(15) "ExampleUsername" } string(15) "exampleusername"

preferences:
116.49 ms | 1444 KiB | 4 Q