0

아래의 배열에서 'listElemId'의 순서는 배열의 세 번째 요소와 다릅니다. 내가 원하는 것은 그들이 순서대로 (listElem 1,2,3) 있다는 것입니다. 'listElemPoints'는 물론 따라야합니다.다차원 배열을 세 번째 수준으로 정렬

어떻게 수행 할 수 있습니까?

미리 감사드립니다. 이 같은

$listArray { 
    [0] { 
     [0] { 
      ["listElemId"] = 2 // <- should be 1 
      ["listElemPoints"] = 1 } 
     [1] { 
      ["listElemId"] = 3 // <- should be 2 
      ["listElemPoints"] = 2 } 
     [2] { 
     ["listElemId"] = 1  // <- should be 3 
     ["listElemPoints"] = 3 } 
     } 
    [1] { 
     [0] { 
      ["listElemId"] = 3 // <- should be 1 
      ["listElemPoints"] = 1 } 
     [1] { 
      ["listElemId"] = 2 // <- correct 
      ["listElemPoints"] = 2 } 
     [2] { 
      ["listElemId"] = 1 // <- should be 3 
      ["listElemPoints"] = 3 } 
     } 
    [2] { 
     [0] { 
      ["listElemId"] = 3 // <- should be 1 
      ["listElemPoints"] = 1 } 
     [1] { 
      ["listElemId"] = 1 // <- should be 2 
      ["listElemPoints"] = 2 } 
     [2] { 
      ["listElemId"] = 2 // <- should be 3 
      ["listElemPoints"] = 3 } 
     } 
} 

답변

1

뭔가 (테스트되지 않은) 작업을해야합니다

foreach ($listArray as &$arr) { 
    uasort($arr, function($a, $b) { 
    return $a['listElemId'] > $b['listElemId']; 
    }); 
} 
+0

감사합니다 많이! :) – holyredbeard