3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getPairs($array) { $n = count($array); $keys = array_keys($array); $finalArray = []; $i = 0; foreach ($array as $a) { for ($x = $n-1; $i < $x; $x--) { $key1 = $keys[$i]; $key2 = $keys[$x]; $finalArray[$key1.$key2] = [$array[$key1], $array[$key2]]; } $i++; } return $finalArray; } $arr1 = 'arr1'; $arr2 = 'arr2'; $arr3 = 'arr3'; $merged = [ 'a'=> $arr1, 'b'=> $arr2, 'c'=> $arr3 ]; $pairs = getPairs($merged); print_r($pairs);
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.30, 8.2.0 - 8.2.25, 8.3.0 - 8.3.13
Array ( [ac] => Array ( [0] => arr1 [1] => arr3 ) [ab] => Array ( [0] => arr1 [1] => arr2 ) [bc] => Array ( [0] => arr2 [1] => arr3 ) )

preferences:
84.16 ms | 408 KiB | 5 Q