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


Is there a php function for generating associative array from indexed array

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'
)

是否有一个php函数将数组1转换为数组2

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

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

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

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

你可以:

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

…但更切题的一点是:你为什么需要这样做?

这似乎是一个非常奇怪的要求,无论你需要做什么,最好用其他方式完成…

可以使用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
)