Anuncios

Bienvenidos sean a este post, hoy veremos una funcion para los arrays.

Anuncios

Esta funcion ordena un array en sentido inverso manteniendo la relacion de las claves con los valores, veamos su sintaxis:

arsort(array[, orden])
Anuncios

El primer dato es el array que modificaremos, el segundo es opcional y es el encargado de informar el tipo de orden que le aplicaremos, veamos las constantes que podemos usar:

  • SORT_REGULAR, compara los elementos de forma normal sin cambiar los tipos
  • SORT_NUMERIC, compara los elementos de forma numerica
  • SORT_STRING, compara los elementos alfabeticamente
  • SORT_LOCALE_STRING, compara los elementos alfabeticamente pero en base a la configuracion locaal del equipo
  • SORT_NATURAL, compara los elementos alfabeticamente de orden «natural»
  • SORT_FLAG_CASE, se usa para ordenar sin considerar las mayusculas y minusculas
Anuncios

En caso de no utilizar alguno de estos se usara SORT_REGULAR de manera predeterminada, con esto comentado veamos un ejemplo y para ello debemos crear un archivo con el nombre de array.php y le agregaremos el siguiente codigo:

array.php

<?php

$arr_1 = array('cyan','amarillo','magenta','negro');
arsort($arr_1);

print_r($arr_1);

?>
Anuncios

Primero definiremos un array con una serie de valores, luego aplicaremos la funcion a este array para finalmente mostrar como quedo el array que modificamos, veamos como es la salida:

$ php array.php
Array
(
    [3] => negro
    [2] => magenta
    [0] => cyan
    [1] => amarillo
)
$
Anuncios

Observen que los valores se ordenan alfabeticamente de forma descendente pero las claves de cada uno se mantuvieron asignadas al valor.

Anuncios

En resumen, hoy hemos visto a arsort, que es, para que sirve, como se utiliza, y un ejemplo practico para verlo en accion, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50