Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Здравствуйте!
Вот уже который день мучаюсь с такой проблемой:
имеется массив вида $stats[$k]= "$total||$k";
$total = каое-либо значение, $k = номер, нужный мне для последующего
обращения к файлу.
Так вот, мне нужно отсортировать этот массив, но, как вы понимаете,
только по $k ($total||$k), и чтобы при этом сохранилась связка
$total||$k. Мучаюсь уже который день, уже и свою функцию сортировки
написал, и ничего дельного все равно не выходит.

Ответить   Tue, 29 Jun 2004 10:13:16 +0300 (#180769)

 

Ответы:

Добрый день!

Не совсем понятно - $k слева и справа от "=" - это одно и то же число? Ну так
сделай ksort($stats). И не совсем понятно, зачем дублировать данные - пусть будет
$k в ключе, а там, где надо, ты можешь сформировать строку $total||$k.

За сим прощаюсь. Юрий Истомин.

Номер выпуска : 3340
Возраст листа : 281 (дней)
Количество подписчиков : 431
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/180973
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписать : mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Tue, 29 Jun 2004 18:07:09 +0400 (#180973)

 

Здравствуйте Юрий,

Tuesday, June 29, 2004, 5:07:09 PM, вы писали:

так

будет

$k - это одно и тоже число.
Пробовал ksort($stats), ничего не получилось.
Расскажи пожалуйста, для чего ksort используется, для какого вида
сортировки.
А $k - это ID, он для каждого свой, я по нему обращаюсь к файлам, а
при обычном rsort($stats), где элементы $stats имеют вид $stats[1]=23,
ид и значения перемешаются.

Ответить   Wed, 30 Jun 2004 09:58:51 +0300 (#181517)

 

Добрый день!

Ну

Все дело в том, что в пхп в массивах индекс не всегда отсортирован. То есть,
если сделать $a[2] = 1; $a[1] = 2; $a[0] = 3; , то foreach выдаст сначала 2-й
элемент, потом 1-й, а потом 0-й, то есть, элементы в массиве хранятся по порядку
их определения. Поэтому и есть необходимость отсортировать массив по ключу, с
сохранением соответствия ключ-значение. В принципе, ksort применяется для ассоциативных
массивов, где ключ изначально перемешан как попало, но можно и для числовых ключей
использовать.

Можешь кинуть кусок кода? Я не совсем понимаю смысл всего этого дела.
Кстати, ты можешь вообще сделать двумерный массив и сортировать его с помощью
usort()
$stats[] = array($k, $total);
или
$stats[] = array('key' => $k, 'total' => $total);

За сим прощаюсь. Юрий Истомин.

Номер выпуска : 3353
Возраст листа : 282 (дней)
Количество подписчиков : 432
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/181621
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписать : mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Wed, 30 Jun 2004 14:45:01 +0400 (#181621)

 

Здравствуйте Юрий,

Wednesday, June 30, 2004, 1:45:01 PM, вы писали:

2-й

порядку

с

ассоциативных

ключей

Огромное тебе спасибо!
Помогла связка ksort+foreach.

Ответить   Wed, 30 Jun 2004 23:37:14 +0300 (#182459)