0

別の配列の値に基づいて並べ替えたい配列があります。最初の配列:

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

そして2つ目:

 $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;  
        }
    }
}
4

1 に答える 1

0

array_multisort を確認してみましたか? 配列 2 を配列 1 に挿入してから、そのように並べ替えることができますか?

于 2012-06-23T15:42:32.993 に答える