Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сортировка многомерного массива по одному из ключей.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Проклятый принц
Отправлено: 18 Июня, 2013 - 11:55:43
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Нашёл функцию которая сортирует массив по начальным буквам, цифрам и т.д. Использовал их для многомерного массива, и ни чего не получается. Думаю, это справедливо, раз он сортирует лишь текущий массив.
Мне нужно отсортировать многомерный массив по ключу "Date", как быть? Не сам ключ, а именно массив 1-го уровня...
 
 Top
DeepVarvar Супермодератор
Отправлено: 18 Июня, 2013 - 11:57:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




array_multisort() чем не подошел?
 
 Top
Проклятый принц
Отправлено: 18 Июня, 2013 - 12:13:44
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Мне не просто надо сменить порядок ключей, а именно в массиве $user (1, 2, 3, 4, и т.д.), в каждом из которых есть массив date, и по этому массиву date отсортировать циферки массива $user.
 
 Top
DeepVarvar Супермодератор
Отправлено: 18 Июня, 2013 - 12:14:40
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Тот что я написал выше сработает только в том случае, если ключик "Date" идет первым в списке ключей, в противном случае: array_map() и там уже колдуй.
 
 Top
LIME
Отправлено: 18 Июня, 2013 - 12:22:38
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




 
 Top
EuGen Администратор
Отправлено: 18 Июня, 2013 - 12:22:52
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Приведите пример данных и то, что нужно получить в итоге.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Проклятый принц
Отправлено: 18 Июня, 2013 - 12:24:21
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


DeepVarvar пишет:
Тот что я написал выше сработает только в том случае, если ключик "Date" идет первым в списке ключей, в противном случае: array_map() и там уже колдуй.

Я с этой функцией работаю впервые. В каком порядке мне нужно вставлять аргументы, чтобы массив $user, был отсортирован по 2-мерному асоц.массиву date?
(Добавление)
Эм, это наверное, должно быть похоже, как сортировка пользователей в MySQL по дате, или айди, например. Именно вот это я пытаюсь.
Извиняюсь, за корявое объяснение...
 
 Top
LIME
Отправлено: 18 Июня, 2013 - 12:57:05
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




PHP:
скопировать код в буфер обмена
  1. function cmp($a, $b)
  2. {
  3.     return $a['Date'] - $b['Date'];
  4. }
  5. usort($array, "cmp");

(Добавление)
инапланитяны сказали что это оно
 
 Top
Проклятый принц
Отправлено: 18 Июня, 2013 - 13:15:24
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Ну, раз уж инопланетяне сказали, то значит это 100% должно быть оно.
Сейчас опробую...
 
 Top
LIME
Отправлено: 18 Июня, 2013 - 13:18:58
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




это смотря в каком виде Date
если не timestamp то нет
 
 Top
Проклятый принц
Отправлено: 18 Июня, 2013 - 14:45:13
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Дата в виде time() , но почему-то ощутимой разницы нет, тот же беспорядок, но некоторые изменили места, но не по порядку.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB