2013-05-21 3 views
0

Disons que j'ai un tableau:clés du tableau de swap/d'échange php

Array 
(
    [0] => 18208021789 
    [1] => Ziggo-Humax iHDR5050C 
    [2] => 191.90 
    [4] => Something 
    [5] => foo bar 
} 

Et je veux changer remplacer le lieu de [1] avec [5], afin résultat que je devrais avoir:

Array 
(
    [0] => 18208021789 
    [1] => foo bar 
    [2] => 191.90 
    [4] => Something 
    [5] => Ziggo-Humax iHDR5050C 
} 

Comment puis-je réaliser cela avec PHP?

Répondre

2
$tmp=$arr[1]; 
$arr[1]=$arr[5]; 
$arr[5]=$tmp; 
1

Vous pouvez utiliser cette fonction. Il suffit de le copier: D

function swapPos(&$arr, $pos1, $pos2){ 
     $keys = array_keys($arr); 
     $vals = array_values($arr); 
     $key1 = array_search($pos1, $keys); 
     $key2 = array_search($pos2, $keys); 

     $tmp = $keys[$key1]; 
     $keys[$key1] = $keys[$key2]; 
     $keys[$key2] = $tmp; 

     $tmp = $vals[$key1]; 
     $vals[$key1] = $vals[$key2]; 
     $vals[$key2] = $tmp; 

     $arr = array_combine($keys, $vals); 
    } 
2
list($arr[1], $arr[5]) = array($arr[5], $arr[1]); 

En savoir plus sur list. En outre, list n'est pas une fonction.

Questions connexes