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


How to interchange array keys and values using for loop?

我有一个像

这样的数组
$a = array('1'=>'one','2'=>'two','3'=>'three');

我想只使用for循环交换键和值,我想要像

这样的输出
$a = array('one'=>1,'two'=>2,'three'=>3); 

使用array_flip:

$a = array('one'=>1,'two'=>2,'three'=>3);
$a_flipped = array_flip($a);

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

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

使用foreach循环:

 <?php 
    $a = array('1'=>'one','2'=>'two','3'=>'three');
    $tmp = array();
    foreach($a as $key=>$value){
        $tmp[$value] = $key;
    }
?>