Задать вопрос
@gistol

Как отсортировать массив в заданном порядке?

Приветствую.

Есть массив:
Array
(
    [1] => Array
        (
            [Высшая] => 0
            [Вторая] => 0
            [Первая] => 0
        )

    [2] => Array
        (
            [Вторая] => 0
            [Первая] => 0
            [Высшая] => 0
        )

    [3] => Array
        (
            [Высшая] => 0
            [Первая] => 0
            [Вторая] => 0
        )

    [4] => Array
        (
            [Высшая] => 0
            [Первая] => 0
            [Вторая] => 0
        )

    [5] => Array
        (
            [Вторая] => 0
            [Высшая] => 0
            [Первая] => 0
        )

)


Мне нужно, чтобы лиги были всегда отсортированы в следующем порядке $league_sort_order = array('0'=>'высшая', '1'=>'первая', '2'=>'вторая');

Подскажите как правильно отсортировать массив по заданному условию.
  • Вопрос задан
  • 199 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
@gistol Автор вопроса
Решил топорно, но работает:

$league_sort_order = array('Высшая', 'Первая', 'Вторая');
		foreach ($league_sort_order as $league_sort_order_key => $league_sort_order_value) {
			foreach ($tournaments_array as $tour_number_key => $tour_number_value) {
				foreach ($tour_number_value as $league_key => $league_value) {
					if ($league_value['players']) {
						if ($league_sort_order_value == $league_key) {
							foreach ($league_value['players'] as $player) {
								usort($league_value['players'], "cmp_total");
								$tournaments_array_sorted_by_league[$tour_number_key][$league_sort_order_value] = $league_value;
								//$tournaments_array[$tour_number_key][$league_sort_order_value] = $league_value;
							}
						}
					}
				}
			}
		}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы