Set array keys to value of another arrays values - PHP
I have the following:
( [0] => 3 [1] => 2 [2] => 12 [3] => 6 [4] => 8 [5] => 7 [6] => 9 [7] => 10 [8] => 5 [9] => 4 )
I want to use the value of each of those as the key in:
( [0] => 7 [1] => 2 [2] => 10 [3] => 3 [4] => 5 [5] => 开发者_开发知识库6 [6] => 11 [7] => 9 [8] => 4 [9] => 8 )
I've tried this:
foreach ($iOrder as $i)
{
$pOrder[$i] = $pOrder[$p];
$p++;
}
I get this:
( [12] => 2 [10] => 6 [5] => 5 [4] => 7 )
Any thoughts?
Do you mean
$result = array_combine($keys, $values);
?
array_combine()
Frist array, $arr1,
( [0] => 3 [1] => 2 [2] => 12 [3] => 6 [4] => 8 [5] => 7 [6] => 9 [7] => 10 [8] => 5 [9] => 4 )
Second array, $arr2, ( [0] => 7 [1] => 2 [2] => 10 [3] => 3 [4] => 5 [5] => 6 [6] => 11 [7] => 9 [8] => 4 [9] => 8 )
If I understood correct, you want to use the values of $arr1 as keys in $arr2.
$values = array_values($arr1);
=> This gives you the values of $arr1.
you can use, array_combine($keys, $values);
so the resulting array would be,
$result_arr = array_combine(array_values($arr1), array_values($arr2));
However, it may not work as expected if the no of items in two arrays are different.
精彩评论