Простая сортировка многомерных массивов в php
Как отсортировать многомерный массив по какому-либо значению?
Все достаточно просто. Подойдет функция usort(). Сортирует массив, используя пользовательскую функцию сравнения.
Смотрим пример:
И еще один пример функции сортировки:
<?php function cmp($a, $b) { return strcmp($a["fruit"], $b["fruit"]); } $fruits[0]["fruit"] = "lemons"; $fruits[1]["fruit"] = "apples"; $fruits[2]["fruit"] = "grapes"; usort($fruits, "cmp"); while (list($key, $value) = each($fruits)) { echo "\$fruits[$key]: " . $value["fruit"] . "\n"; } ?>и результат:
1 2 3 |
$fruits[0]: apples $fruits[1]: grapes $fruits[2]: lemons |
1 2 3 4 5 6 7 8 |
function cmp($a,$b){ $a = $a['date']; $b = $b['date']; if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } |
Свежие комментарии