Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/05/2012, 06:45
Avatar de Naahuel
Naahuel
 
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 1 mes
Puntos: 192
Respuesta: Descartar los dos resultados más bajos

Podrías usar esta función:

Código PHP:
Ver original
  1. function quitar_valor_mas_bajo(&$_ar){
  2.     if(!is_array($_ar))
  3.         return false;
  4.    
  5.     $i_valor = 0;
  6.     for($i=0; $i<(count($_ar)-1); $i++){
  7.         if($_ar[$i] < $_ar[$i_valor]){
  8.             $i_valor = $i;
  9.             echo $i_valor;
  10.         }
  11.     }
  12.    
  13.     unset($_ar[$i_valor]);
  14.     $_ar = array_values($_ar);
  15.     return $i_valor;
  16. }

Y llamarla dos veces. OJO, al pasar el parámetro por referencia, esta función es destructiva! Te va a modificar el array que pases por parámetro.

Ejemplo:
Código PHP:
Ver original
  1. <?php
  2.     $ar_valores = array(1,3,4,12);
  3.  
  4.     quitar_valor_mas_bajo($ar_valores);
  5.     quitar_valor_mas_bajo($ar_valores);
  6.  
  7.     var_dump($ar_valores);
  8.  
  9.    
  10.    
  11.     function quitar_valor_mas_bajo(&$_ar){
  12.         if(!is_array($_ar))
  13.             return false;
  14.        
  15.         $i_valor = 0;
  16.         for($i=0; $i<(count($_ar)-1); $i++){
  17.             if($_ar[$i] < $_ar[$i_valor]){
  18.                 $i_valor = $i;
  19.                 echo $i_valor;
  20.             }
  21.         }
  22.        
  23.         unset($_ar[$i_valor]);
  24.         $_ar = array_values($_ar);
  25.         return $i_valor;
  26.     }
  27. ?>
__________________
nahueljose.com.ar