开发者

Set array keys to value of another arrays values - PHP

开发者 https://www.devze.com 2023-03-23 06:25 出处:网络
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 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.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号