如何用其值替换数组键

时间:2011-05-31 09:22:50

标签: php arrays

我有以下数组:

array('Elnett', 'INOA INOA', 'Playball P', 'Preferred Color Specialist', 
      'Série Expert', 'Série Nature', 'Techni art')

我想要键和值如:

array('Elnett' => 'Elnett', 
      'INOA INOA' => 'INOA INOA', 
      'Playball P' => 'Playball', 
      'Preferred Color Specialis' => 'Preferred Color Specialist', 
      'Série Expert' => 'Série Expert', 
      'Série Nature' => 'Série Nature', 
      'Techni art' => 'Techni art')

我该如何做到这一点?

4 个答案:

答案 0 :(得分:23)

array_combine从两个数组中创建一个键/值数组。应该可以为键和值使用相同的数组:

$names = array_combine($names, $names);

答案 1 :(得分:5)

这个单行答案可能对某人有用。

$trans = array_flip($array);

http://us1.php.net/array_flip

array_flip返回给定key => value数组的value =>键格式。 随着问题的改变,这不再完全回答OP的问题了。

答案 2 :(得分:2)

foreach($array as $key=>$value){
    $out[$value] = $value;
}

print_r($out);

答案 3 :(得分:1)

可以做这样的事情。不确定是否有更清洁的方法。

foreach($names as $key => $name){
    $names[$name] = $name;
    unset($names[$key]);
}