Función array_multisort() de PHP
Ejemplo
Devuelve un array ordenado en orden ascendente:
<?php $a=array("Dog","Cat","Horse","Bear","Zebra"); array_multisort($a); print_r($a); ?>
Definición y uso
La función array_multisort() devuelve un array ordenado. Puede ingresar un o varios arrays. La función primero ordena el primer array, luego otros arrays, y si dos o más valores son iguales, ordena el siguiente array.
Comentarios:Se conservarán los nombres de clave de cadena, pero los nombres de clave numérica se reindexarán, comenzando en 0 y aumentando en 1.
Comentarios:Puede establecer los parámetros de orden y tipo de ordenamiento después de cada array. Si no se establecen, cada parámetro de array utilizará el valor predeterminado.
Sintaxis
array_multisort(array1,orden de disposición,tipo de ordenamiento,array2,array3...)
Parámetros | Descripción |
---|---|
array1 | Necesario. Especificar array. |
orden de disposición |
Opcional. Especificar el orden de disposición. Los valores posibles son:
|
tipo de ordenamiento |
Opcional. Especificar el tipo de ordenamiento. Los valores posibles son:
|
array2 | Opcional. Especificar array. |
array3 | Opcional. Especificar array. |
Descripción
La función array_multisort() ordena múltiples arrays o arrays multidimensionales.
El array en los parámetros se considera una columna de una tabla y se ordena por filas - esto es similar a la función ORDER BY de SQL. El primer array es el array principal a ordenar. Si las filas (valores) del array son iguales, se ordena según el tamaño de los valores correspondientes del siguiente array de entrada, y así sucesivamente.
El primer parámetro es un array, y cada parámetro siguiente puede ser un array o uno de los siguientes índices de ordenamiento (los índices de ordenamiento se utilizan para cambiar el ordenamiento predeterminado):
- SORT_ASC - Predeterminado, ordenar en orden ascendente. (A-Z)
- SORT_DESC - Ordenar en orden descendente. (Z-A)
Luego se puede especificar el tipo de ordenamiento:
- SORT_REGULAR - Predeterminado. Ordenar cada elemento en orden convencional.
- SORT_NUMERIC - Ordenar cada elemento en orden numérico.
- SORT_STRING - Ordenar cada elemento en orden alfabético.
Detalles técnicos
Valor de retorno: | Devuelve TRUE si tiene éxito, FALSE si falla. |
Versión de PHP: | 4+ |
Registro de actualizaciones: |
Los tipos de ordenación SORT_NATURAL y SORT_FLAG_CASE se agregaron en PHP 5.4. El tipo de ordenación SORT_LOCALE_STRING se agregó en PHP 5.3. |
Más ejemplos
Ejemplo 1
Devuelve un array ordenado en orden ascendente:
<?php $a1=array("Dog","Cat"); $a2=array("Fido","Missy"); array_multisort($a1,$a2); print_r($a1); print_r($a2); ?>
Ejemplo 2
¿Cómo se ordenan cuando dos valores son iguales?:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,$a2); print_r($a1); print_r($a2); ?>
Ejemplo 3
Uso de parámetros de ordenación:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,SORT_ASC,$a2,SORT_DESC); print_r($a1); print_r($a2); ?>
Ejemplo 4
Combinar dos arrays y ordenarlos en orden numérico descendente:
<?php $a1=array(1,30,15,7,25); $a2=array(4,30,20,41,66); $num=array_merge($a1,$a2); array_multisort($num,SORT_DESC,SORT_NUMERIC); print_r($num); ?>