$records2 = [ [ 'id' => 2135, 'first_name' => 'John' ], [ 'id' => 3245, 'first_name' => 'Sally' ], [ 'id' => 5342, 'first_name' => 'Jane' ], [ 'id' => 5623, 'first_name' => 'Peter' ], [ 'id' => 6982, 'first_name' => 'Sally' ] ]; function array_collapse($arr, $x, $y) { $carr = array(); while ($el = current($arr)) { $carr[ $el[$x] ] = $el[$y]; next($arr); } return $carr; } $c = array_collapse($records2, 'id', 'first_name' ); var_dump($c); bdump($c);
Otrzymujemy nową tabelę bez wcześniejszych kluczy, gdzie dawne elementy stały się początkowymi kluczami tej tablicy:
array (5) 2135 => "John" (4) 3245 => "Sally" (5) 5342 => "Jane" (4) 5623 => "Peter" (5) 6982 => "Sally" (5)