Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.01.2010, 03:40   #1
Хохматый
 
Регистрация: 17.06.2009
Сообщений: 4
По умолчанию Нюансы сортировки многомерного массива

Приветствую, уважаемые!

Подскажите, пожалуйста: как (какой функцией? array_multisort ли или другой ) отсортировать многомерный массив, если на входе

$array[0][id]=1
$array[0][name]="Иванов"
$array[0][year]=1997

$array[1][id]=2
$array[1][name]="Петров"
$array[1][year]=1992

$array[2][id]=3
$array[2][name]="Сидоров"
$array[2][year]=2003

И нужно отсортировать массив по полю year по возрастающей так, чтобы сохранилось соответствие между значениями полей в исходном массиве и на выходе получилось бы:

$array[0][id]=2
$array[0][name]="Петров"
$array[0][year]=1992

$array[1][id]=1
$array[1][name]="Иванов"
$array[1][year]=1997

$array[2][id]=3
$array[2][name]="Сидоров"
$array[2][year]=2003

???

Пример короткий. Может, подскажете готовое решение? Я уже умаялся искать и собрался писать пользовательскую функцию
Хохматый вне форума Ответить с цитированием
Старый 31.01.2010, 11:55   #2
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

Сортировка многомерного массива

Код:
$ar = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1));
array_multisort ($ar[0], SORT_ASC, SORT_STRING,
                 $ar[1], SORT_NUMERIC, SORT_DESC);
В вышеприведенном примере, после сортировки, первый массив будет содержать 10, 100, 100, "a" (его элементы были отсортированы в возрастающем порядке так, как если бы они были строками), а второй массив будет содержать 1, 3, "2", 1 (элементы отсортированы как числа, в порядке убывания).

Взято с php.su
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 31.01.2010, 15:36   #3
Хохматый
 
Регистрация: 17.06.2009
Сообщений: 4
По умолчанию

to spein

Этот кусок кода я вижу уже не на одном форуме. Как и жалобы на его некоректную работу в моём примере. А могли бы вы написать готовый код для моего примера конкретно?
Хохматый вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка многомерного массива Evgen1503 Помощь студентам 0 29.01.2010 13:59
Создание и перебор многомерного массива regman PHP 2 27.10.2009 11:29
Алгоритм сортировки одномерного массива JOFRIF Общие вопросы C/C++ 4 19.07.2009 17:23
Проверка многомерного массива на тип сортировки его строк. FatCat Помощь студентам 4 20.12.2008 21:21
Из сортировки массива в сортировку матрици XXXimpulsXXX Помощь студентам 2 12.10.2008 15:11