簡體   English   中英

根據另一個數組中的值對數組數組進行排序

[英]Sort an array of arrays based on values from another array

我有一個數組,我想根據另一個數組的值對其進行排序。 第一個數組:

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

您是否嘗試過檢查array_multisort? 您可以將數組2注入數組1,然后以這種方式排序嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM