Сортировка массива перед выводом.

Yuriy_S

-=PHP-Club=-
Сортировка массива перед выводом.

Привет всем.
Подскажите собственно сабж.
Есть файл, циклим и выводим его, используем функцию list($id, $message, $time,$data)=explode("|",$x[$i]);
в файле много строк. необходимо вывести все записи в отсортированном виде по дате и времени.
ПРобовал sort() - не помогает, помогите плиз!
заранее благодарен!
 

RomikChef

Guest
Вообще-то, если бы у тебя не было этот дурацкого id в начале строки, а вместо него стояло время в нормальном формате, то можно было бы сортировать и простым сортом.

А если подумать - то и сортировка не нужна. сообщения все равно добавляются одно за другим. Зачем вообще сортировать?
 

Yuriy_S

-=PHP-Club=-
Сортировка просто так и не нужна, я использую аррай реверс.
вот, а сортировку хочу применить в системе администрирования, так как array_reverse() дает неверное значение номера строки.
ТО есть:
у меня есть кнопка удалить, в форме есть поле скрытое, значение его $i цикла, который перебирает все строки, а если делаю реверс, то как бы значение поля становится наоборот,
то есть нада удалить строку 0, а удаляет последнюю строку, и наоборот. Помогите плиз!
 

RomikChef

Guest
ты можешь объяснить - зачем тебе сортировка?
 

Yuriy_S

-=PHP-Club=-
ну наверно, если отсортировать, то значение поля hidden будет совпадать с номером строки.
Запутал меня ...:)
Помогите лучше мне с этим (то что я выше написал), что бы когда кнопку жмешь, номер строки соответствовал значению поля хидден.
 

RomikChef

Guest
Юра, если уж у тебя есть это идиотское поле $id - то почему бы ЕГО в хидден не писать?

а вообще, меня поражает отсутствие у тебя в голове даже примитивной логики.
Все параллельно.

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

Ну если тебе так дорога эта $i - ну выводи в обратном порядке.
никакой реверс тебе не нужен
сделай for ($i=sizeof($a);$i <=0;$i--)
это тебя устроит?
 

Yuriy_S

-=PHP-Club=-
блин, ты можешь без издевательств и унижений?
вспомни себя, сам то наверно когда был чайником, все знал чтоль? Я чайник, и это знаю, поэтому и спрашиваю такие вещи, а со временем просто буду знать все подробные мелочи...
---------------------------
сделай for ($i=sizeof($a);$i <=0;$i--)
это тебя устроит?
-----------------------------
нет, не устроит, потому что такой метод работать не будет! проверено. А вот насчет поля $id ещё подумаю.
Ещё, сортировка нужна для того, что бы выводить топики отсортированные по времени последнего сообщения в нем.
И для сортировки по времени и дате, помоему одной функции usort недостаточно....
В общем, пойду я как-нибудь сам тогда попробую.
Спасибо..
 

RomikChef

Guest
свои "по-моему" оставь при себе.
и не заставляй меня нервничать.
И повторять по три раза.
Делай, что тебе говорят!

вот это будет работать
for ($i=sizeof($a)-1;$i >=0;$i--)
Да, я малость неверно написал сначала. Но извини, тут все-таки, не всем приходится разжевывать каждую крупинку - некоторым достаточно показать направление.
Я забыл, что по ассоциации ты сделать не можешь.

usort поможет, но не нужен.
потому, что сообщения у тебя и так отсортированы, поскольку добавлялись последовательно.
 

RomikChef

Guest
а по поводу твоего самолюбия.
если ты хочешь, чтобы с тобой общались, как с равным - будь добр, формулируй свои мыысли и проблемы человеческим языком.
Если ты считаешь, что какой-то совет тебе не подходит - аргументируй это.

Дело не в знаниях. Их может и вообще не быть.
Но ножно хотя бы умение связно изложить свою проблему и мнение. И не кидаться какими-то обрывками.

И уметь решать задачу по образцу. как первая решалась - по той же формуле и вторая решается. С этим у тебя большие проблемы.
 
Сверху