如何使用for循环交换数组键和值?

use*_*158 0 php arrays for-loop

我有一个类似的数组

$a = array('1'=>'one','2'=>'two','3'=>'three');
Run Code Online (Sandbox Code Playgroud)

我想只使用for循环互相交换键和值,我想要所需的输出

$a = array('one'=>1,'two'=>2,'three'=>3); 
Run Code Online (Sandbox Code Playgroud)

Ale*_*rov 5

用途array_flip:

$a = array('one'=>1,'two'=>2,'three'=>3);
$a_flipped = array_flip($a);
Run Code Online (Sandbox Code Playgroud)

如果你坚持使用循环,那么创建一个新的空数组,遍历给定的数组并使用值作为键填充新数组,即:

$a = array('one'=>1,'two'=>2,'three'=>3);
$a_flipped = array();
foreach ($a as $key => $value) {
    $a_flipped[$value] = $key;
}
Run Code Online (Sandbox Code Playgroud)