asort
(PHP 3, PHP 4, PHP 5)
asort - Отсортировать массив, сохраняя ключиОписание
bool asort ( array &array [, int sort_flags] )Эта функция сортирует массив таким образом, что сохраняются отношения между ключами и значениями. Она полезна, в основном, при сортировке ассоциативных массивов, когда важно сохранить отношение ключ => значение.
Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.
Пример 1. Пример использования asort()
$fruits = array("d" => "lemon", "a" => "orange",
"b" => "banana", "c" => "apple");
asort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "$key = $val<br />\n";
}
Результат выполнения данного примера:
c = apple
b = banana
d = lemon
a = orange
Названия фруктов были отсортированы и отношения ключ/значение были сохранены.
Вы можете изменить поведение сортировки, используя дополнительный параметр sort_flags, подробнее см. sort().
Пример 2. Сортировка двумерного массива
Для сортировки двухмерных массивов по одной из его “веток” я использую следующую функциюfunction udf_sort(&$array, $index)
{
$compare_func = create_function('$a, $b',
'return ($a[\''.$index.'\']==$b[\''.$index.'\'])? 0:
(($a[\''.$index.'\']>$b[\''.$index.'\'])? 1: -1);');
if (!function_exists($compare_func))
{
return false;
}
return usort($array, $compare_func);
}
$arr = array(
'a1' => array(2, 1, 6, 4, 5),
'a2' => array(7, 4, 66, 14, 5),
);
udf_sort($arr, 'a1'); // сортировка по массива, содержащегося в ключе a1
Смотрите также arsort(), rsort(), ksort() и sort().
Все функции arrayОписание на ru2.php.net
Описание на php.ru