ВНИМАНИЕ: Запись на курсы по HTML, CSS, JavaScript, PHP, Python, React, Vue, Laravel и другим фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
178 of 410 menu
Хочешь читать code.mu на своем родном языке? Помоги с переводом! Переведем мы сами, тебе нужно указать на ошибки перевода:) Оставляй заявку ->

Функция uasort

Функция uasort сортирует массив по возрастанию элементов, сохраняя ключи ассоциативного массива.

Функция uasort сортирует массив по значению элементов, используя для этого коллбэк для определения порядка элементов в отсортированном массиве. Функция изменяет сам массив.

Функция сравнения должна возвращать целое число, которое в зависимости от результата сравнения: меньше, равно или больше нуля.

Функция изменяет сам массив.

Синтаксис

uasort(array &$array, int $flags = SORT_REGULAR): bool

Пример

Давайте отсортируем массив по возрастанию элементов:

<?php $arr = [ 'b' => 1, 'e' => 3, 'c' => 2, 'a' => 5, 'd' => 4, ]; function func($a, $b) { if ($a === $b) { return 0; } else if ($a < $b) { return -1; } else { return 1; } } uasort($arr, 'func'); var_dump($arr); ?>

Результат выполнения кода:

[ 'b' => 1, 'c' => 2, 'e' => 3, 'd' => 4, 'a' => 5, ]

Пример

А теперь отсортируем массив по возрастанию количества символов в элементах массива:

<?php $arr = [ 'a' => '123', 'b' => '1', 'c' => '12345', 'd' => '12', 'e' => '1234', ]; function func($a, $b) { if (strlen($a) === strlen($b)) { return 0; } else if (strlen($a) < strlen($b)) { return -1; } else { return 1; } } uasort($arr, 'func'); var_dump($arr); ?>

Результат выполнения кода:

[ 'b' => '1', 'd' => '12', 'a' => '123', 'e' => '1234', 'c' => '12345', ]

Смотрите также

  • функцию sort,
    которая сортирует по возрастанию элементов
  • функцию rsort,
    которая сортирует по убыванию элементов
  • функцию ksort,
    которая сортирует по возрастанию ключей
  • функцию krsort,
    которая сортирует по убыванию ключей
  • функцию asort,
    которая сортирует по возрастанию элементов с сохранением ключей
  • функцию arsort,
    которая сортирует по убыванию элементов с сохранением ключей
  • функцию natsort,
    которая сортирует натуральным образом
  • функцию natcasesort,
    которая сортирует натуральным образом без регистра
  • функцию usort,
    которая сортирует по коллбэку
  • функцию uksort,
    которая сортирует по коллбэку по ключам
  • функцию uasort,
    которая сортирует по коллбэку с сохранением ключей
  • функцию array_multisort,
    которая сортирует несколько массивов
byenru