English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este tutorial, aprenderá cómo ordenar elementos o claves de arrays en orden ascendente o descendente en PHP.
En el capítulo anterior, ya ha aprendido los conocimientos básicos de arrays en PHP, como lo que es un array, cómo crearlos, cómo ver su estructura, cómo acceder a sus elementos, etc. Puede hacer más con los arrays, como ordenar los elementos según el orden especificado.
PHP incluye muchas funciones integradas, diseñadas específicamente para ordenar elementos de arrays de diferentes maneras, como en orden alfabético o numérico, en orden ascendente o descendente. Aquí, exploraremos algunas de las funciones más utilizadas para ordenar arrays.
sort() y rsort() - Ordenar arrays de índices
asort() y arsort() - Se utilizan para ordenar arrays asociativos por valor
ksort() y krsort() - Se utilizan para ordenar arrays asociativos por clave
La función sort() se utiliza para ordenar en orden ascendente los elementos del array de índices (los elementos se ordenan alfabéticamente, y los números se ordenan numéricamente).
<?php //Definir el array $colors = array("Red", "Green", "Blue", "Yellow"); //Ordenar y mostrar el array sort($colors); print_r($colors); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [0] => Blue [1] => Verde [2] => Rojo [3] => Yellow )
Del mismo modo, puede ordenar los elementos numéricos del array en orden ascendente.
<?php //Definir el array $numbers = array(1, 2, 2.5, 4, 7, 10); //Ordenar y mostrar el array sort($numbers); print_r($numbers); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [0] => 1 [1] => 2 [2] => 2.5 [3] => 4 [4] => 7 [5] => 10 )
La función rsort() se utiliza para ordenar en orden descendente los elementos del array de índices (los elementos se ordenan alfabéticamente, y los números se ordenan numéricamente).
<?php //Definir el array $colors = array("Red", "Green", "Blue", "Yellow"); // Ordenar y mostrar el array rsort($colors); print_r($colors); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [0] => Amarillo [1] => Rojo [2] => Verde [3] => Azul )
Del mismo modo, puede ordenar los elementos numéricos del array en orden descendente.
<?php //Definir el array $numbers = array(1, 2, 2.5, 4, 7, 10); //Ordenar y mostrar el array rsort($numbers); print_r($numbers); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [0] => 10 [1] => 7 [2] => 4 [3] => 2.5 [4] => 2 [5] => 1 )
La función asort() ordena los elementos de un array asociativo en orden ascendente por valor. Funciona de manera similar a sort(), pero mantiene la asociación entre la clave y su valor durante el ordenamiento.
<?php //Definir el array $age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35); //Ordenar y mostrar el array por valor asort($age); print_r($age); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [Harry] => 14 [Peter] => 20 [Clark] => 35 [John] => 45 )
La función arsort() ordena los elementos de un array asociativo en orden descendente por valor. Funciona de manera similar a rsort(), pero mantiene la asociación entre la clave y su valor durante el ordenamiento.
<?php //Definir el array $age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35); //Ordenar y mostrar el array por valor arsort($age); print_r($age); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [John] => 45 [Clark] => 35 [Peter] => 20 [Harry] => 14 )
La función ksort() ordena los elementos de un array asociativo en orden ascendente por clave. Al igual que la función asort(), mantiene la asociación entre la clave y su valor durante el ordenamiento.
<?php //Definir el array $age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35); //Ordenar el array por teclas y mostrar ksort($age); print_r($age); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [Clark] => 35 [Harry] => 14 [John] => 45 [Peter] => 20 )
La función ksort() ordena los elementos de un array asociativo en orden ascendente por clave. Al igual que la función asort(), mantiene la asociación entre la clave y su valor durante el ordenamiento.
<?php //Definir el array $age = array("Peter"=>20, "Harry"=>14, "John"=>45, "Clark"=>35); //Ordenar el array por teclas y mostrar krsort($age); print_r($age); ?>Prueba a ver‹/›
La sentencia print_r() proporciona la siguiente salida:
Array ( [Peter] => 20 [John] => 45 [Harry] => 14 [Clark] => 35 )