English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Основной Урок

PHP Уровеньный Урок

PHP & MySQL

PHP Референс Мануал

Сортировка массивов PHP

В этом курсе вы узнаете, как сортировать элементы или ключи массива по возрастанию или убыванию в PHP.

Функции PHP для сортировки массивов

В предыдущей главе вы уже изучили основы PHP массивов, то есть что такое массивы, как их создавать, как смотреть на их структуру, как обращаться к их элементам и т.д. Вы можете использовать массивы для выполнения множества других операций, например, для сортировки элементов в порядке, указанном вами.

PHP содержит множество встроенных функций, которые专门 предназначены для сортировки элементов массивов по различным способам, например, по алфавиту или числам в порядке возрастания или убывания. В этой статье мы рассмотрим некоторые из наиболее часто используемых функций для сортировки массивов.

  • sort() и rsort() — сортировка индексных массивов

  • asort() и arsort() — используются для сортировки связных массивов по значениям

  • ksort() и krsort() — используются для сортировки связных массивов по ключам

Сортировка индексного массива по возрастанию

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

<?php
//Определение массива
$colors = array("Red", "Green", "Blue", "Yellow");
 
//Сортировка и вывод массива
sort($colors);
print_r($colors);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

 Array ( [0] => Blue [1] => Green [2] => Red [3] => Yellow )

Таким образом, вы можете отсортировать элементы массива чисел по возрастанию.

<?php
//Определение массива
$numbers = array(1, 2, 2.5, 4, 7, 10);
 
//Сортировка и вывод массива
sort($numbers);
print_r($numbers);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Array ( [0] => 1 [1] => 2 [2] => 2.5 [3] => 4 [4] => 7 [5] => 10 )

Сортировка индексного массива по убыванию

Функция rsort() используется для сортировки элементов индексного массива по убыванию (alfавитный порядок по алфавиту, числовой порядок по числам).

<?php
//Определение массива
$colors = array("Red", "Green", "Blue", "Yellow");
 
// Сортировка и печать массива
rsort($colors);
print_r($colors);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Array ( [0] => Yellow [1] => Red [2] => Green [3] => Blue )

Таким образом, вы можете отсортировать элементы массива чисел по убыванию.

<?php
//Определение массива
$numbers = array(1, 2, 2.5, 4, 7, 10);
 
//Сортировка и вывод массива
rsort($numbers);
print_r($numbers);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Массив ( [0] => 10 [1] => 7 [2] => 4 [3] => 2.5 [4] => 2 [5] => 1 )

Сортировка связанного массива по значению в порядке возрастания

Функция asort() сортирует элементы связанного массива по значению в порядке возрастания. Она работает аналогично функции sort(), но сохраняет ассоциацию между ключом и значением при сортировке.

<?php
//Определение массива
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
//Сортировка массива по значению и вывод
asort($age);
print_r($age);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Массив ( [Harry] => 14 [Peter] => 20 [Clark] => 35 [John] => 45 )

Сортировка связанного массива по значению в порядке убывания

Функция arsort() сортирует элементы связанного массива по значению в порядке убывания. Она работает аналогично функции rsort(), но сохраняет ассоциацию между ключом и значением при сортировке.

<?php
//Определение массива
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
//Сортировка массива по значению и вывод
arsort($age);
print_r($age);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Массив ( [John] => 45 [Clark] => 35 [Peter] => 20 [Harry] => 14 )

Сортировка связанного массива по ключам в порядке возрастания

Функция ksort() сортирует элементы связанного массива по ключам в порядке возрастания. Как и функция asort(), она сохраняет ассоциацию между ключом и значением при сортировке.

<?php
//Определение массива
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
//Сортировка массива по ключам и вывод
ksort($age);
print_r($age);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Массив ( [Clark] => 35 [Harry] => 14 [John] => 45 [Peter] => 20 )

Сортировка связанного массива по ключам в порядке убывания

Функция ksort() сортирует элементы связанного массива по ключам в порядке возрастания. Как и функция asort(), она сохраняет ассоциацию между ключом и значением при сортировке.

<?php
//Определение массива
$age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35);
 
//Сортировка массива по ключам и вывод
krsort($age);
print_r($age);
?>
Тестирование看看‹/›

Выражение print_r() предоставляет следующий вывод:

Массив ( [Peter] => 20 [John] => 45 [Harry] => 14 [Clark] => 35 )