PHP: Ordenar arrays multidimesionales segun un valor

Hace unas semanas en el sitio de ldu.com.ec me solicitaron realizar un listado de los goleadores del equipo, pero guardar datos de dos fases la actual y la previa y segun la suma de las fases ordenar el ranking, sin embargo los datos se guarban en un archivo xml y pues primero tenia que parsearlo y pasar uno a uno los jugadores para sacar cuantos goles llevaban sumados y pues el sistema es un formulario muy simple y pues el editor podria insertar la informacion en orden y listo, pero…. que pasaria si el editor no los ordena? el ranking ya no seria un ranking seria una simple lista cosa que en un portal deportivo no da muchas informacion.

Asi que a raiz de que en ese momento mi internet esta hecho una mi@$#a pues me saque un algoritmo y saque el siguiente codigo el cual es para usarlo en joomla sin embargo con unas pequeñas modificaciones podrian pasar cualquier array.

$nparams = new mosParameters( $list );    $nums = 14;    $jugador = array();    $goles = array();    $first = array();    $second = array();    for($i=0;$i<$nums;$i++){    if(trim( $nparams->get('jugador'.$i)) != ""){    $gol = intval($nparams->get('goles'.$i)) + intval($nparams->get('l0goles'.$i));    $goles[$i] = $gol;    $first[$i] = intval($nparams->get('goles'.$i));    $second[$i] = intval($nparams->get('l0goles'.$i));    $jugador[$i] = stripslashes( $nparams->get('jugador'.$i));    $a = $i - 1;    if($gol > $goles[$a]){    while(($gol > $goles[$a]) AND ($a >= 0)){    $jugador[$a + 1] = $jugador[$a];    $first[$a + 1] = $first[$a];    $second[$a + 1] = $second[$a];    $goles[$a + 1] = $goles[$a];    $goles[$a] = intval($nparams->get('goles'.$i)) + intval($nparams->get('l0goles'.$i));    $first[$a] = intval($nparams->get('goles'.$i));    $second[$a] = intval($nparams->get('l0goles'.$i));    $jugador[$a] = stripslashes( $nparams->get('jugador'.$i));    $a = $a - 1;    }    }    $tnums++;    }    }

Si se fijan el while es el que se encarga de re-ordenar el valor goles si el gol anterior es menor al actual.

comment ¿Que opinas?

Artículos recientes

close

Esculturas de luz para la nueva campaña de McDonald’s

McDonald’s en francia está inaugurando su sucursal de 24 horas; y para lo cual, ha contratado al escultor Olivier Favart, el cual ha creado unas espectaculares esculturas de luz para promocionar a la cadena de comida rápida….

close

Princesas Millenials por Fernanda Suarez

Fernanda Suárez es una artista e ilustradora que siente afición por las princesas de Disney; esto refleja con su más reciente trabajo denominado “Modern Princess”, en el cual nos muestra a las princesas de Disney…

close

Etapas para el diseño de un cartel por Alicia Úbeda

La creativa Alicia Úbeda ha desarrollado un pequeño tutorial grafico para mostrarnos lo que ella considera son las 5 etapas para el desarrollo de un cartel. Estas son relativamente sencillas, y se encuentran abocadas al…

close

Como la fotografía ayudó a una ONG con la adopción animal

El poder de una buena fotografía puede derivar en resultados sin importar el giro de tu empresa; sea ésta lucrativa o no. Esto lo demuestra el fotógrafo Albert Harris; el cual ha acudido en ayuda…

close

Tazas personalizables, lo nuevo de Starbucks para el otoño

Llega el otoño y con ello la caída de las hojas de los árboles; lo cual no debe ser motivo de depresión pues nos encontramos ante una de las transiciones más hermosas entre temporadas. Starbucks…

close

Animales de fieltro por Zenia Kli Zafska

El arte sólo tiene un límite; la imaginación, la cual siempre está en creciente aumento en el ámbito creativo y por ello todos los días hay nuevos proyectos, piezas de arte que vale la pena…

notifications Recién publicamos
close