CakeFest 2024: The Official CakePHP Conference

ArrayObject::uasort

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

ArrayObject::uasortOrdena las entradas con una función de comparación definida por el usuario y mantiene asociación de claves

Descripción

public ArrayObject::uasort(callable $cmp_function): void

Esta función ordena las entradas de forma que las claves mantengan su correlación con la entrada que está asociada con, una función de comparación definida por el usuario.

Esto se utiliza principalmente para ordenar arrays asociativos donde el orden de los elementos es importante.

Parámetros

cmp_function

La función cmp_function acepta 2 parámetros que serán llenados por pares de entradas. La función de comparación debe devolver un integer menor que, igual a, o mayor que cero si el primer argumento es menor que, igual a, o mayor que el segundo.

Valores devueltos

No devuelve ningún valor.

Ejemplos

Ejemplo #1 Ejemplo de ArrayObject::uasort()

<?php
// Función de comparación
function cmp($a, $b) {
if (
$a == $b) {
return
0;
}
return (
$a < $b) ? -1 : 1;
}

// Array a ser ordenado
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
$arrayObject = new ArrayObject($array);
print_r($arrayObject);

// Ordena e imprime el resultado del array
$arrayObject->uasort('cmp');
print_r($arrayObject);
?>

El resultado del ejemplo sería:

Array
(
    [a] => 4
    [b] => 8
    [c] => -1
    [d] => -9
    [e] => 2
    [f] => 5
    [g] => 3
    [h] => -4
)
Array
(
    [d] => -9
    [h] => -4
    [c] => -1
    [e] => 2
    [g] => 3
    [a] => 4
    [f] => 5
    [b] => 8
)

Ver también

add a note

User Contributed Notes 1 note

up
1
poxetinho at gmail dot com
12 years ago
Note that return values between (-1, 1) are being considered as 0.
To Top