Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сортировка массива
 
 автор: Shorr Kan   (30.04.2006 в 17:06)   письмо автору
 
 

Я уже задавал вопрос на эту тему... но пока до конца не вник.

1|slovo2|site2|1
2|slovo3|site3|5
3|slovo1|site1|3

Как мне отсортировать по тому столбцу, по которому я хочу? Например, по последнему - должно получится:

2|slovo3|site3|5
3|slovo1|site1|3
1|slovo2|site2|1

Или по второму... тогда:

3|slovo1|site1|3
1|slovo2|site2|1
2|slovo3|site3|5

   
 
 автор: Trianon   (30.04.2006 в 22:17)   письмо автору
 
   для: Shorr Kan   (30.04.2006 в 17:06)
 

С помощью собственной функции определения порядка сортировки:

<?php

$arr 
= array(
"2|slovo3|site3|5",
"3|slovo1|site1|3",
"1|slovo2|site2|1"
);

function 
s_cmp($a$b)
{
    
$n 2// номер поля,  определяющего порядок сортировки
    
$ra explode('|'$a);
    
$rb explode('|'$b);
    if(
$ra[$n]==$rb[$n]) return 0;
    return 
$ra[$n]>$rb[$n] ? : -1;
}

usort($arrs_cmp);
echo 
'<pre>';
print_r($arr);
?>

   
 
 автор: Shorr Kan   (01.05.2006 в 06:15)   письмо автору
 
   для: Trianon   (30.04.2006 в 22:17)
 

Понял, спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования