简体   繁体   English

如何更改特定数组值的数组键

[英]How can I change array key for specific array value

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! 我想做的是:将每个位置键(0,1,2)更改为id值!

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. 我尝试根据PHP Doc使用“ array_flip”。 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. 谢谢。

A simple oneliner: 一个简单的单行代码:

$new_array = array_combine(
    array_column($your_array, 'id'),    // these are keys
    $your_array                         // these are values
);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM