3v4l.org

run code in 300+ PHP versions simultaneously
<?php $merged = [ '1' => '2', '2' => '3', '4' => '1', '5' => '2' ]; $aliasesReduced = false; while(!$aliasesReduced) { $aliasesReduced = true; foreach($merged as $originalId => &$mergedId) { if (array_key_exists($mergedId, $merged)) { $mergedId = $merged[$mergedId]; $aliasesReduced = false; } } } print_r($merged);

preferences:
36.79 ms | 402 KiB | 5 Q