Php,如何交换两个关联数组KEY?

标签 php arrays

我有这个输入:

array(
    'a' => 1,
    'b' => 2,
    'c' => 3,
    'd' => 4
);

我想得到这个:

array(
    'a' => 1,    
    'c' => 3,
    'b' => 2,
    'd' => 4
);

如您所见,更改的是键,而不是它们的值。我知道关联数组中没有均匀的顺序 - 就我而言,这很重要。那么,有什么解决办法吗?

最佳答案

另一种解决方案,任意

$array = array(
    'a' => 1,
    'b' => 2,
    'c' => 3,
    'd' => 4
);

print_r($array);

$myNewOrder = ['a','c','d','b'];
$result = [];
foreach($myNewOrder as $key){
    $result[$key] = $array[$key];
}

$array = $result;

print_r($array);

输出:

Array
(
    [a] => 1
    [b] => 2
    [c] => 3
    [d] => 4
)
Array
(
    [a] => 1
    [c] => 3
    [d] => 4
    [b] => 2
)

关于Php,如何交换两个关联数组KEY?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32429196/

相关文章:

C程序逐字符读取字符串

java - 如何将两个数组相加并得到总和的平均值?

java - 从方法返回迭代器

c++ - c++ 中是否可能存在指向不同类型的指针数组?

php - WordPress - 将两个复杂查询合并为一个

java - 如何在 If 语句中使用数组

php - jQuery .show() 在刷新之前不起作用

php - mysql 不断返回空结果(错误)

php - $facebook->getLogoutUrl();链接不会让用户退出 Facebook

php - 将Mysql查询结果传递给javascript,然后使用原始变量调用函数。