我在php数组中有问题。似乎不是很难 对阵列有所了解。
我有两个阵列
例如:
第一个数组是:
Array (
[651] => 12
[620] => 10
[681] => 7
[792] => 6
[402] => 5)
第一个数组按降序排序。
第二个阵列是:
Array (
[681] => Blue
[620] => White
[792] => Red
[651] => Green
[402] => Gray)
两个阵列都有类似的键。
现在我想要一个看起来像这样的数组
Array (
[651] => Green
[620] => White
[681] => Blue
[792] => Red
[402] => Gray)
这意味着第二个数组键应该根据第一个数组的值进行排序。
非常感谢你。
答案 0 :(得分:0)
您可以使用array_multisort
。但是你不应该事先对第一个数组进行排序。如果第一个数组单独排序,则应通过再次按键对其进行同步(使用ksort
):
// Sync two arrays -- sort by keys.
ksort($array1);
ksort($array2);
// Sort second array accordingly to the first.
array_multisort($array1, SORT_DESC, $array2);
这是working demo。
请注意,通过这种方法,两个数组最终都会被排序,但是你会松开键,即数组将被重新索引。