а если в конечном массиве не один тока = $person['name'], а несколько надо, как в теме я написал (price, cat и cat_id)?
Но, я не знаю как мне задать В МОЕМ СЛУЧАЕ...
$newarray=array();
foreach($array as $item){
$newarray[$item['data']][] = [$item['price']][$item['cat']][$item['cat_id']][];
}
не пашет, я чето путаю...
вопрос закрыт, сам допер...
$newarray=array();
foreach($array as $item){
$newarray[$item['data']][] = [$item['price']]
$newarray[$item['data']][] = [$item['cat']]
$newarray[$item['data']][] = [$item['cat_id']];
}
[Ответ]
svga 20:12 27.02.2012
AlexanderSergeev, ты там не систему наведения ракет пишешь? Массивы какие-то, карты гугла... [Ответ]
silly 22:08 27.02.2012
AlexanderSergeev, bb-тег [code] существует, я сам его видел.
[Ответ]
AlexanderSergeev 22:49 27.02.2012
блин, извиняйте за код без тега..
так как быть-то?
или непонятно разъяснил суть вопроса?..
[Ответ]
anadonam 00:06 28.02.2012
нужно найти какой нибудь критерий за который зацепиться (что естественно и он у тебя есть [я не вникал]), а потом почитай методы сортировки массива они для всех языков одинаковы (и сортируй по этому критерию) и размерность массива как таковое не важна (с размерностью уже сам додумаешь) http://www.vzmakh.ru/info/pascal/modules/page14.html
ps/ я бы пошел по более простому пути - херакнул бы этот масиив в таблицу БД (с 4-мя полями соответственно ) а потом выборкой с параметром order by все и решил.... (и гемор с плечь) - но конечно при наличии возможности такой
[Ответ]
Spectator 01:25 28.02.2012
Сообщение от AlexanderSergeev:
блин, извиняйте за код без тега..
так как быть-то?
или непонятно разъяснил суть вопроса?..
Сам то как думаешь?)))
Объясни толком - что нужно. Желательно - поподробнее. И внятно.
Ты не прыгай по вершкам, ни дизайнером, ни, уж тем паче, программистом ты с таким подходом не станешь.
И даже 17 лет - не оправдание. Я в 15 нудно Кнута в никитинской библиотеке конспектировал.
А тебе надо всё и сразу.
[Ответ]
Hopkroft 07:59 28.02.2012
Сообщение от anadonam:
ps/ я бы пошел по более простому пути - херакнул бы этот масиив в таблицу БД (с 4-мя полями соответственно ) а потом выборкой с параметром order by все и решил.... (и гемор с плечь) - но конечно при наличии возможности такой
Ну или бы изначально сделал так что-бы эти данные в таблице хранились. И с упорядочиванием и с фильтрацией все проблемы бы решил язык SQL [Ответ]
AlexanderSergeev 14:27 28.02.2012
Я уж написал, что разобрался)))
ЗЫ: БД настолько объемна, что этот массив уже дважды обработанная выборка с не менее замороченными фильтрами.
[Ответ]
Vital_N 14:36 28.02.2012
Сообщение от anadonam:
ps/ я бы пошел по более простому пути - херакнул бы этот масиив в таблицу БД (с 4-мя полями соответственно ) а потом выборкой с параметром order by все и решил....
А вот еще кстати интересный момент, заинтересовало.
Есть числа, точно не помню, к примеру: 12234234, 1724234, 1785023957
Т.е. разной даже длины, и по факту как чила разные.
Если у поля формат INT, то сортируются как надо, а если TEXT, то вообще я не понимаю по какой схеме они сортируются..т.е. order by и ASC и DESC очень оригинально упорядочивают.
По какой схеме-то сортируются числа в полях TEXT?[Ответ]
Vital_N 14:52 28.02.2012
AlexanderSergeev, не поверишь - сортируются как строки )
[Ответ]
AlexanderSergeev 15:04 28.02.2012
вроде и не по алфавиту...
большие вперемешку с малыми шли числами, а не сначала маленькие потом большие или наоборот.
[Ответ]
silly 23:19 28.02.2012
Сообщение от AlexanderSergeev:
вроде и не по алфавиту...
большие вперемешку с малыми шли числами, а не сначала маленькие потом большие или наоборот.
Ну ты иногда как спросишь… непонятно, смеяться нужно или плакать.
Сообщение от AlexanderSergeev:
вроде и не по алфавиту...
большие вперемешку с малыми шли числами, а не сначала маленькие потом большие или наоборот.
Во-первых, прочитай что написал предыдущий товарищ. Во вторых - изучи что есть ASCII.
И на основе этого задумайся - не имеет ли смысл типизировать данные перед сортировкой.
Или хотя бы вставлять leading zero + ограничение по длине.
[Ответ]
silly 23:26 28.02.2012
Сообщение от Vital_N:
оригинально - пять баллов!
Насчет оригинальности, вот выдержка из документации sqlite:
Сообщение от :
Internal or temporary databases
For programs that have a lot of data that must be sifted and sorted in diverse ways, it is often easier and quicker to load the data into an in-memory SQLite database and use queries with joins and ORDER BY clauses to extract the data in the form and order needed rather than to try to code the same operations manually. Using an SQL database internally in this way also gives the program greater flexibility since new columns and indices can be added without having to recode every query.
Сообщение от silly:
Насчет оригинальности, вот выдержка из документации sqlite:
тут не sqlite и не масса данных явно ) оверхед будет огромный, отсортировать массив будет мудрее )
[Ответ]
Spectator 12:54 29.02.2012
На счет этого:
Сообщение от anadonam:
ps/ я бы пошел по более простому пути - херакнул бы этот масиив в таблицу БД (с 4-мя полями соответственно ) а потом выборкой с параметром order by все и решил.... (и гемор с плечь) - но конечно при наличии возможности такой
могу только одно сказать - мсье знает толк в извращениях)))
[Ответ]
anadonam 13:45 29.02.2012
Сообщение от Vital_N:
тут не sqlite и не масса данных явно ) оверхед будет огромный, отсортировать массив будет мудрее )
это называется научи дурака богу малиться он и лоб расшибет )) - ну естественно конструктив нужно продумывать еще до того как вообще алгоритмы выдумывать - вариантов "тыща".. с "5мя" значениями оно вообще сортировать и не нужно если сесть подумать и разобраться как хранить данные ...
как пример: берем 5 текстовых файлов - присваиваем им имена цифрой по которой сортируем 1.txt, 2.txt и так далее - открываем по нужной нам сортировке (по возрасанию или убыванию - по очереди) читаем данные , юзаем их ....... всё. [и сортировать нечего] [варианты совпадения не рассматривал - при возможности совпадения нужно подключать доп параметр чтобы выбрать какой первее..] - эт я так .... ))
ps/ нужно видеть всю картину чтобы выбрать оптимальный путь и мусолить можно вечно и все равно будет скока людей столько и мнений как правильней (кому как легче)
метод пузырька никто не отменял ))
[Ответ]