Notatki PHP

prywatne zapiski na kamieniu

 
 
$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)