Reputation: 267
I have an multidimensional array like this:
Position 0: {id=5, name=john}
Position 1: {id=7, name=frank}
Position 2: {id=9, name=tina}
What I'm trying to do is: Change the Position Key (0,1,2) to id value for each one!
Position 5: {id=5, name=john}
Position 7: {id=7, name=frank}
Position 9: {id=9, name=tina}
I tried to use "array_flip" according to PHP Doc. But I did not succeed! But I just found reference for unidimensional arrays. Like this:
<?php
$input = array("oranges", "apples", "pears");
$flipped = array_flip($input);
print_r($flipped);
?>
Any idea? Thanks.
Upvotes: 1
Views: 104
Reputation: 54831
A simple oneliner:
$new_array = array_combine(
array_column($your_array, 'id'), // these are keys
$your_array // these are values
);
Upvotes: 2