PHP数组问题

时间:2011-01-03 00:53:23

标签: php arrays

我有一个我希望输出的数组列表,如下面的示例所示。我怎样才能在PHP中实现它?

Array List:
array(
  [0] => First,
  [1] => Second,
  [2] => Third,
)

Want to output like this:
array(
  [First] => First,
  [Second] => Second,
  [Third] => Third
)

谢谢, 蒸气男孩

3 个答案:

答案 0 :(得分:3)

您可以使用array_combine()并传递原始数组的两个副本:

$new_list = array_combine($list, $list);
print_r($new_list);

以定义的顺序将第一个参数的内容映射为键,将第二个参数的内容映射为值。

答案 1 :(得分:2)

我没有测试过,但这应该可行

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

应该这样做

答案 2 :(得分:2)

这是最好的冗余。使密钥与其值匹配是没有意义的,并且可能强调了在应用程序中某处进行设计更改或潜在优化的必要性。转过来:

array(
  [0] => First,
  [1] => Second,
  [2] => Third,
)

进入这个:

array(
  [First] => First,
  [Second] => Second,
  [Third] => Third
)

有效地减少了您存储的信息量,因为开发人员事先知道密钥应该与值匹配。