Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Сортировка многомерного массива, по ключу подмассивов
Barh  
 ۩  [x]    Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 80
Пользователь №: 31275
На форуме: 5 лет, 2 месяца, 28 дней
Карма: 1




Здравствуйте, Форумчане!


Array
(
[
1] => Array
(
[
id] => 1
[login] => forenx
[checked_b] => 14
[assigned_b] => 15
[checked_a] => 1
[assigned_a] => 2
[position] => 9
)

[
2] => Array
(
[
id] => 2
[login] => sphinx
[checked_b] => 162
[assigned_b] => 166
[checked_a] => 39
[assigned_a] => 42
[position] => 3
)

...



Как можно заметить, каждый пользователь занесен в отдельный массив со номером равным array[]['id'].
Мне нужно отсортировать массив по значению ключа position, чтобы массивы шли по порядку отталкиваясь от значения ключа position. С сохранением ключей самих массивов.

Буду очень благодарен..



Спустя 31 минута, 31 секунда (11.02.2012 - 14:53) nugle написал(а):
Barh
Так попробуй
foreach($arr as $key=>$val)
sort($val['position']);

Спустя 53 минуты, 32 секунды (11.02.2012 - 15:46) Winston написал(а):
Простейшая сортировка пузырьком
Свернутый текст
$flag = true;
while($flag == true)
{
$flag = false;
for($i = 0; $i < sizeof($arr)-1; $i++)
{
if($arr[$i]['position'] > $arr[$i + 1]['position'])
{
$tmp = $arr[$i];
$arr[$i] = $arr[$i + 1];
$arr[$i + 1] = $tmp;

$flag = true;
}
}
}


echo '<pre>' . print_r($arr, 1) . '</pre>';

Спустя 33 минуты, 33 секунды (11.02.2012 - 16:20) Barh написал(а):
nugle
Предложенным способом сделать не получилось, но всё равно спасибо!

Winston
Сделал Сортировкой Пузырьком) Всё получилось. Большое спасибо!

Спустя 9 минут, 34 секунды (11.02.2012 - 16:30) johniek_comp написал(а):
Winston
Что за пузырек? biggrin.gif biggrin.gif biggrin.gif

Спустя 1 минута, 44 секунды (11.02.2012 - 16:31) Winston написал(а):
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Закрытая темаСоздание новой темыСоздание опроса