Просмотр полной версии : Сортировка массива!
У меня сервер отдает данные в сортировке бд, ну выводишь на странице надо по другом порядке, у меня есть массив id
1,2,3,4,24,5,14,16,27,34,30,37,32,40,11,39,23,19,6 ,7,12,8,9,13,10,22,26,28,36,41,15,31,17,18,20,21,3 3,35,25,29,38 где надо выводить данные как мне это сделать?
Что было 1,2,3,4,24 а не 1,2,3,4,5,6
Пример массива
id: 27
nomer: 26
Надо сортировать по: nomer
Хотел вот так
function sIncrease(i,ii){
if(i.id>ii.id) return 1;
else if(i.id<ii.id) return -1;
else return 0;
}
Не вышло(
Заранее спасибо.
А по какой это закономерности после 4 должно быть 24?
Надо сортировать по: nomer
sIncrease
где в функции nomer?
Пример массива
сделайте нормальный пример
id: 1
nomer: 1 Вот
real_id: 1
mrKot, если требуется некая сортировка не поддающаяся осмысленному, то читайте о ORDER BY FIELD.
Вот такой массив!)
{
0: {
id: 1
nomer: 1
cnt: 5633
}
1: {
id: 2
nomer: 2
}
}
А почему вы выборку не сортируете сразу по нужному?
Вот такой массив!)
обьект неотсортировать
id и nomer это поля SQL таблицы?
Да mysql я знаю и так у мне это не поможет, так как часть данных идет с чужого сервера)
mrKot,
неужели так сложно массив сделать для образца ? если у вас не массив, то обьект до сортировки и после сортировки -- а так ждите телепата который поймёт что вы сортируите.
А вы думаете вам JS поможет? Нет типа сортировки, которая бы догадалась, что после 4 должно следовать 24. Если знаете SQL, значит должны и знать, что для задания сортировки определенной в таблице создают поле ее описывающее. По другому ничего не получится.
Единственное, что можно сделать, это отсортировать опираясь на какую-то закономерность, если она у вас есть. Да и делать это надо средствами РНР, у него богаче инструментарий в этом плане.
Вот такое поступает в sort
{
0: {
id: 1
nomer: 1
}
1: {
id: 2
nomer: 2
}
2: {
id: 3
nomer: 3
}
}
nomer планировалось после кого элемента вывести например если будет id 10 и он будет расположен в массиве, тот что с верху есть он будет идти 4 после прохождения в sort
nomer планировалось после кого элемента вывести например если будет id 10 и он будет расположен в массиве, тот что с верху есть он будет идти 4 после прохождения в sort
не осилил
Функция sort не сортирует многомерные массивы, для этого существует функция array_multisort.
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot