fork(1) download
  1. <?php
  2.  
  3. $array = [
  4. 0 => [
  5. 'id' => 29,
  6. 'number' => 1,
  7. 'user_id' => 10,
  8. 'profile' => [
  9. 'club_id' => 777,
  10. 'last_name' => 'Ворожцова',
  11. 'user_id' => 10,
  12. 'name' => 'Елена',
  13. ],
  14. ],
  15. 1 => [
  16. 'id' => 28,
  17. 'number' => 2,
  18. 'user_id' => 50,
  19. 'profile' => [
  20. 'club_id' => 222,
  21. 'last_name' => 'Ворожцов',
  22. 'user_id' => 50,
  23. 'name' => 'Максим',
  24. ],
  25. ],
  26. 2 => [
  27. 'id' => 30,
  28. 'number' => 2,
  29. 'user_id' => 100,
  30. 'profile' => [
  31. 'club_id' => 222,
  32. 'last_name' => 'Федоров',
  33. 'user_id' => 100,
  34. 'name' => 'Максим',
  35. ],
  36. ],
  37. ];
  38.  
  39. $sorted_array = [];
  40. foreach ($array as $item) {
  41. $sorted_array[$item['profile']['club_id']][$item['profile']['user_id']] = [
  42. 'user_id' => $item['profile']['user_id'],
  43. 'user_data' => $item['profile'],
  44. ];
  45. }
  46.  
  47. var_dump($sorted_array);
Success #stdin #stdout 0.01s 23868KB
stdin
Standard input is empty
stdout
array(2) {
  [777]=>
  array(1) {
    [10]=>
    array(2) {
      ["user_id"]=>
      int(10)
      ["user_data"]=>
      array(4) {
        ["club_id"]=>
        int(777)
        ["last_name"]=>
        string(18) "Ворожцова"
        ["user_id"]=>
        int(10)
        ["name"]=>
        string(10) "Елена"
      }
    }
  }
  [222]=>
  array(2) {
    [50]=>
    array(2) {
      ["user_id"]=>
      int(50)
      ["user_data"]=>
      array(4) {
        ["club_id"]=>
        int(222)
        ["last_name"]=>
        string(16) "Ворожцов"
        ["user_id"]=>
        int(50)
        ["name"]=>
        string(12) "Максим"
      }
    }
    [100]=>
    array(2) {
      ["user_id"]=>
      int(100)
      ["user_data"]=>
      array(4) {
        ["club_id"]=>
        int(222)
        ["last_name"]=>
        string(14) "Федоров"
        ["user_id"]=>
        int(100)
        ["name"]=>
        string(12) "Максим"
      }
    }
  }
}