Сортировка массива по нескольким элементамPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Сортировка массива по нескольким элементам

Сообщение Anonymous »

Я решил переписать это, чтобы сделать это более понятным и, надеюсь, устранить путаницу.

Скажем, у меня несколько этажей офисов. Я хочу отсортировать эти офисы по наименьшему номеру для каждого этажа
чтобы результат выглядел следующим образом:

Код: Выделить всё

-------------------------
| floor | office | sort |
-------------------------
|   1   |   4    |   1  |
|   2   |   4    |   2  |
|   3   |   3    |   3  |
|   4   |   3    |   4  |
|   1   |   5    |   5  |
|   2   |   5    |   6  |
|   3   |   4    |   7  |
|   4   |   4    |   8  |
|   1   |   6    |   9  |
|   2   |   6    |  10  |
|   3   |   5    |  11  |
|   4   |   5    |  12  |
|   2   |   7    |  13  |
|   3   |   6    |  14  |
|   4   |   6    |  15  |
|   3   |   7    |  16  |
|   4   |   7    |  17  |
-------------------------
Массив:

Код: Выделить всё

array (
0 => array (
'floor' => 1,
'office' => 4,
),
1 => array (
'floor' => 1,
'office' => 5,
),
2 => array (
'floor' => 1,
'office' => 6,
),
3 => array (
'floor' => 2,
'office' => 4,
),
4 => array (
'floor' => 2,
'office' => 5,
),
5 => array (
'floor' => 2,
'office' => 6,
),
6 => array (
'floor' => 2,
'office' => 7,
),
7 => array (
'floor' => 3,
'office' => 3,
),
8 => array (
'floor' => 3,
'office' => 4,
),
9 => array (
'floor' => 3,
'office' => 5,
),
10 => array (
'floor' => 3,
'office' => 6,
),
11 => array (
'floor' => 3,
'office' => 7,
),
12 => array (
'floor' => 4,
'office' => 3,
),
13 => array (
'floor' => 4,
'office' => 4,
),
14 => array (
'floor' => 4,
'office' => 5,
),
15 => array (
'floor' => 4,
'office' => 6,
),
16 => array (
'floor' => 4,
'office' => 7,
)
, )
Что мне нужно сделать, так это пройти по каждому этажу по одному, занять офис с наименьшим номером, а затем снова начать с этажа с наименьшим номером, пока не исчерпаю себя.< /п>

Подробнее здесь: https://stackoverflow.com/questions/346 ... e-elements
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»