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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2008, 12:42   #1
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
Смущение сортировка в многомерном массиве

делаю массив
Код:
while($rp = mysql_fetch_array($resp))
{
 $mp[$rp["post_id"]] = array("topic" => $rp["topic_id"],"forum" => $rp["forum_id"],"text" => $rp["post_subject"]);
 if ($max<$rp["post_id"]){$max=$rp["post_id"];}
}
Подскажите как мне его упростить или хотя бы надо:
1)отсортировать весь $mp[$rp["post_id"]] по $rp["post_id"]
2)удалить все $mp[$i] кроме $n больших $rp["post_id"]
3)сделать массив без пробелов номеров в $rp["post_id"]? т.е. чтобы $rp["post_id"] так и шли попорядку.
Разработка сайтов -дело прикольное

Последний раз редактировалось LeoN; 29.05.2008 в 13:04. Причина: изменение кода
LeoN вне форума Ответить с цитированием
Старый 29.05.2008, 13:31   #2
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Во-первых, тебе нужно научиться отделять многомерный массив, от одномерного.

1) Твой массив $mp[] является одномерным, и сортируется обычными функциями сортировки PHP (sort(), arsort(), asort(), ksort(), natsort(), natcasesort(), rsort(), usort(), array_multisort() и uksort()).

2) Почитай мануал по функциям: array_shift() и array_pop()
3) Напиши свою функцию, которая бы проходила по всему массиву и упорядочивала ключи. Хотя я честно не понимаю, зачем тебе это нужно, но да ладно..
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 29.05.2008, 15:25   #3
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Извините, под конец рабочего дня мозги тормозят - и правда одномерный.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 02.06.2008, 04:07   #4
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

и все таки у меня не получается вывод:
$mp[0]["post_subject"]
если так то ничего, а если просто 0 то выдает array.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 02.06.2008, 04:52   #5
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Да, что-то я пропустил, что ты присваиваешь массиву уже ещё одно измерение.. Многомерный он у тебя. Тебе сюда.
http://www.php.net/manual/ru/functio...-multisort.php
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 02.06.2008, 05:03   #6
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

все уже разобрался, спасибо всем
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 02.06.2008, 05:04   #7
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

хотя как помотреть.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 03.06.2008, 07:46   #8
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Код:
$max=0;
while($rp = mysql_fetch_array($resp))
{
 $mp[$rp["post_id"]] = array("topic" => $rp["topic_id"],"forum" => $rp["forum_id"],"caption" => $rp["post_subject"],"time" => $rp["post_time"]);
 if ($max<$rp["post_id"]){$max=$rp["post_id"];}
}

array_multisort($mp);

for($u=count($mp)-20;$u<count($mp);$u++)
{
echo "<a href=http://".$sait."/viewtopic.php?f=".$mp[$u]["forum"]."&t=".$mp[$u]["topic"]."&start=".$u."#p".$u.">".$mp[$u]["caption"]."</a><br>";
}
скажите как мне отсортировать по "time", у меня не получается. спасибо за ссылку, но от нее легче не стало.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 03.06.2008, 15:39   #9
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Как насчёт сортировки в MySQL запросе?
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Существование элемента в массиве Carbon Помощь студентам 10 31.03.2008 19:03
Снова о массиве Constellation Общие вопросы Delphi 2 09.02.2008 20:42
Нахождение суммы в массиве. PHP Айвенго Помощь студентам 3 28.01.2008 19:46
сохранение данных в массиве ratibor32 Общие вопросы C/C++ 1 04.01.2008 12:44
Обмен блоков в массиве Irik Помощь студентам 6 29.04.2007 14:08