Forum Webscript.Ru
Программирование => Perl => Тема начата: Sanchez от 08 Марта 2006, 13:16:53
-
Как сделать? Т.е. что-то типа
@news;
$news[0][0]=\'asdasda\';
$news[0][1]=\'2006-03-01\';
$news[1][0]=\'sdfasfdfsdf\';
$news[1][1]=\'2004-02-01\';
Нужно остортировать по второй колонке, т.е. по дате. Я написал такую фичу:
@news=sort( {$news[$a][1] cmp $news[$b][1]} @news);
Но она не работает, ошибка Out of memory during "large" request for 1073745920 bytes, total sbrk() is 2070528 bytes at news.pl line 34.
Стопудово неправильно че-то делаю, но что? :)
-
sort { $a->[1] cmp $b->[1]; } @news
либо написать вместо cmp свою функцию для разбора даты и сравнения.