Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/06/2015, 13:10
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 3 meses
Puntos: 977
Respuesta: Mostrar primer dato de un array

El ordenamiento se realiza correctamente (lo acabo de comprobar), por lo que lo único que faltaría sería obtener a los dos primeros valores. Con tantas funciones que ofrece PHP para manipular arrays, las posibilidades son muchas. Una de las que se me ocurre es la siguiente:

Código PHP:
Ver original
  1. $datos = ["964"=>"Hola", "498"=>"Adios", "362"=>"Buenos dias", "516"=>"Buenas noches", "370"=>"Buenas tardes"];
  2. krsort($datos);
  3. $aux = $datos;
  4. $valorPrimero = array_shift($aux);
  5. $clavePrimero = array_search($valorPrimero, $datos);
  6. $valorSegundo = array_shift($aux);
  7. $claveSegundo = array_search($valorSegundo, $datos);
  8. echo "Se han dicho $clavePrimero veces $valorPrimero y $claveSegundo veces las $valorSegundo.";

El proceso es simple. Luego de ordenar los datos del array, creo una copia del mismo y con ayuda de las funciones array_shift() y array_search(), tomo tanto a los dos primeros valores de la copia del array ordenado como a sus índices.

Finalmente, imprimo los datos, siendo el resultado de este ejemplo lo siguiente:

Código HTML:
Ver original
  1. Se han dicho 964 veces Hola y 516 veces las Buenas noches.

DEMO

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand