Ordenar matrices multidimensionales por clave
Una tarea común cuando se trabaja con matrices multidimensionales es la necesidad de ordenarlas según una clave específica. Por ejemplo, considere la siguiente matriz:
Array ( [0] => Array ( [iid] => 1 [invitee] => 174 [nid] => 324343 [showtime] => 2010-05-09 15:15:00 [location] => 13 [status] => 1 [created] => 2010-05-09 15:05:00 [updated] => 2010-05-09 16:24:00 ) [1] => Array ( [iid] => 1 [invitee] => 220 [nid] => 21232 [showtime] => 2010-05-09 15:15:00 [location] => 12 [status] => 0 [created] => 2010-05-10 18:11:00 [updated] => 2010-05-10 18:11:00 ))
Para ordenar esta matriz por la tecla [estado], puede usar la función usort junto con una función de comparación personalizada:
// Define a comparison function function cmp($a, $b) { if ($a['status'] == $b['status']) { return 0; } return ($a['status']Al definir la función cmp, especifica cómo se deben comparar los elementos durante la clasificación. En este caso, compara la clave [status] de los dos elementos, devolviendo -1 si $a['status'] es menor que $b['status'], 0 si son iguales y 1 en caso contrario.
La función usort organiza los elementos de la matriz en orden ascendente según la salida de la función de comparación. Esto le permite ordenar la matriz multidimensional por la clave deseada, en este caso, [estado].
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3