是否有用于从索引数组生成关联数组的php函数

时间:2011-12-15 12:05:32

标签: php arrays

Array
(
    [0] => '1 Fail'
    [1] => '2 Fail'
    [2] => '3 Pass'
    [3] => '4 Pass'
    [4] => '5 Pass'
)

Array
(
    ['1 Fail'] => '1 Fail'
    ['2 Fail'] => '2 Fail'
    ['3 Pass'] => '3 Pass'
    ['4 Pass'] => '4 Pass'
    ['5 Pass'] => '5 Pass'
)

是否有从数组1转换为数组2的php函数

PS:我知道这一点,所以我正在寻找内置功能

foreach($result as $value)
{
    $assoc[$value] = $value;
}

3 个答案:

答案 0 :(得分:5)

假设您的所有数组值都是唯一的:

$assoc = array_combine(array_values($arr), array_values($arr));

答案 1 :(得分:1)

你可以:

array_walk($array, function ($value, &$key) {
  $key = $value;
});

......但更重要的一点是:为什么你需要这样做?

这似乎是一个非常奇怪的要求,无论你需要做什么,都会以其他方式做得更好......

答案 2 :(得分:1)

您可以使用array_combine

$arr    = array(
'1 fail',
'2 fail',
'3 fail',
'4 fail',
);
print_r(array_combine($arr, $arr));



Array
(
    [1 fail] => 1 fail
    [2 fail] => 2 fail
    [3 fail] => 3 fail
    [4 fail] => 4 fail
)