根据另一个数组中的值对数组数组进行排序

时间:2012-06-23 15:28:35

标签: php arrays sorting

我有一个数组,我想根据另一个数据的值对其进行排序。 第一个数组:

$array1 = ( [0]=> Int(2) 
    [1]=>Array(['id']=>String(5) , ['value']=>String(10))
    [2]=>Array(['id']=>String(5) , ['value']=>String(10))
    [3]=>Array(['id']=>String(5) , ['value']=>String(10))
)

第二个:

 $array2 = (1,4,3)

结果应该基于$ array2:

 $array1 = ( [0]=> Int(2) 
    [1]=>Array(['id']=>String(5) , ['value']=>String(10))
    [3]=>Array(['id']=>String(5) , ['value']=>String(10))
    [2]=>Array(['id']=>String(5) , ['value']=>String(10))
)           

我尝试过冒泡但不起作用:

  for ($i = 1 ; $i <= $array1[0] ; $i++){
    for ($j = $i+1 ; $j <= $array1[0] ; $j++){
        if ($array2[$i] < $array2[$j]){
            $temp = $array1[$i];
            $array1[$i] = $array1[$j];
            $array1[$j] = $temp;  
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您是否尝试过检查array_multisort?你可以将数组2注入到数组1中,然后按这种方式对它进行排序吗?