Foros del Web » Programando para Internet » PHP »

Mostrar resultados según porcentaje

Estas en el tema de Mostrar resultados según porcentaje en el foro de PHP en Foros del Web. Vamos, estoy teniendo un bloqueo mental con una gilipollez que no sé plantear a nivel de código. Supongamos que tengo estos enlaces en un array: ...
  #1 (permalink)  
Antiguo 12/05/2011, 03:59
 
Fecha de Ingreso: septiembre-2004
Mensajes: 324
Antigüedad: 19 años, 8 meses
Puntos: 13
Mostrar resultados según porcentaje

Vamos, estoy teniendo un bloqueo mental con una gilipollez que no sé plantear a nivel de código.

Supongamos que tengo estos enlaces en un array:

google.es - 40%
yahoo.es - 40%
meneame.net - 20%

Me gustaría que según el porcentaje aparecieran, quiero decir, que de las veces que se muestra cada enlace aparezca google un 40% de las veces....yahoo otro 40% de las veces.... y meneame.net un 20%.....

Seguro que es una tontería pero no sé como plantearlo.

En realidad más que un porcentaje es un promedio....
  #2 (permalink)  
Antiguo 12/05/2011, 08:45
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Mostrar resultados según porcentaje

que conste que solo respondo con el código porque de cierta forma encontré algo como un reto lo que intentabas hacer :P

Código PHP:
<?php
$webs 
= array('google.es' => 40'yahoo.es' => 40'meneame.net' => 20);
foreach (
$webs as $key => $value) {
    for (
$i $value$i 0$i--) $new[] = $key;
}
echo 
$new[rand(0,count($new) - 1)];
revisalo y trata de entender el funcionamiento

saludos.
__________________
More about me...
~ @rhyudek1
~ Github

Última edición por Hidek1; 12/05/2011 a las 08:59
  #3 (permalink)  
Antiguo 12/05/2011, 09:15
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 13 años, 6 meses
Puntos: 48
Respuesta: Mostrar resultados según porcentaje

Cita:
Iniciado por Hidek1 Ver Mensaje
que conste que solo respondo con el código porque de cierta forma encontré algo como un reto lo que intentabas hacer :P

Código PHP:
<?php
$webs 
= array('google.es' => 40'yahoo.es' => 40'meneame.net' => 20);
foreach (
$webs as $key => $value) {
    for (
$i $value$i 0$i--) $new[] = $key;
}
echo 
$new[rand(0,count($new) - 1)];
revisalo y trata de entender el funcionamiento

saludos.
Dejame explicar segun entiendo:

Lo que hace es por cada elemento en el arreglo $webs cuenta su valor luego rellena el arreglo $new con tal elemento segun el valor osea se agregan 40 google.es 40 yahoo.es & 20 meneame.net , ya rellenado el arreglo $new
con la funcion rand imprimimos alguna posicion random donde ahi la posicion mayor a obtener la obtendremos del numero de elemento que contiene $new.

Bueno asi es como lo entendi yo jeje
  #4 (permalink)  
Antiguo 12/05/2011, 11:20
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Mostrar resultados según porcentaje

claro.. así saldrá una opción random en proporción al total de elementos
haciendo algo así como una regla de 3

saludos. =)
__________________
More about me...
~ @rhyudek1
~ Github

Etiquetas: porcentaje, resultados
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 00:47.