Foros del Web » Programando para Internet » PHP »

Problema con arrays

Estas en el tema de Problema con arrays en el foro de PHP en Foros del Web. Saludos tengo este código: Código: $arreglo = array('0','0','0'); switch($_POST["platanos"]) { case "broma": echo "broma"; $arreglo[0]++; break; case "flipar": echo "flipar"; $arreglo[1]++; break; case "reir": echo ...
  #1 (permalink)  
Antiguo 26/12/2011, 02:29
 
Fecha de Ingreso: octubre-2011
Mensajes: 230
Antigüedad: 13 años, 1 mes
Puntos: 75
Problema con arrays

Saludos tengo este código:


Código:
$arreglo = array('0','0','0');

switch($_POST["platanos"])
{

	case "broma":
	echo "broma";
	$arreglo[0]++;
	break;
	
	case "flipar":
	echo "flipar";
	$arreglo[1]++;
	break;
	
	case "reir":
	echo "reir";
	$arreglo[2]++;
	break;
}
?>
<br />
<?php
for($i=0;$i<=2;$i++)
{
echo "$arreglo[$i] <br>\n";
}  
?>
¿Como hago para que me haga un echo del array más grande?
¿Está bien planteado el array?

Saludos y gracias de antemano.
  #2 (permalink)  
Antiguo 26/12/2011, 03:02
 
Fecha de Ingreso: abril-2011
Mensajes: 4
Antigüedad: 13 años, 7 meses
Puntos: 2
Respuesta: Problema con arrays

Hay un par de cosas que no entiendo:
1) ¿Por qué almacenas en el array los ceros como letras y no como números?
2) ¿Qué significa"?un echo del array más grande"?

Creo que el código que muestras es correcto, pero a lo mejor te sería más cómodo usar un foreach en lugar de un for.

Si sólo vas a usar el array en códigos como este tal vez te vendría bien un array asociativo de este estilo:

$arreglo = array('"broma" => 0, "flipar" => 0, "reir"=>0);
  #3 (permalink)  
Antiguo 26/12/2011, 03:17
 
Fecha de Ingreso: octubre-2011
Mensajes: 230
Antigüedad: 13 años, 1 mes
Puntos: 75
Respuesta: Problema con arrays

Cita:
Iniciado por aspr66 Ver Mensaje
Hay un par de cosas que no entiendo:
1) ¿Por qué almacenas en el array los ceros como letras y no como números?
2) ¿Qué significa"?un echo del array más grande"?

Creo que el código que muestras es correcto, pero a lo mejor te sería más cómodo usar un foreach en lugar de un for.

Si sólo vas a usar el array en códigos como este tal vez te vendría bien un array asociativo de este estilo:

$arreglo = array('"broma" => 0, "flipar" => 0, "reir"=>0);

El planteamiento es que es un test, hay una serie de preguntas y segun la respuesta del radio buton se le suma 1 a una variable u a otra. La cosa es que luego si la variable más grande es por ejemplo la que corresponde al 2º que imprima en pantalla una cierta cosa.

Lo almaceno con ceros para luego poder imprimirlos todos con un ciclo for.
El echo del array más grande es imprimir en pantalla el array que haya acumulado un número más grande, si al final se ha quedado 0 1 0 que me imprima el 1.
  #4 (permalink)  
Antiguo 26/12/2011, 03:44
 
Fecha de Ingreso: abril-2011
Mensajes: 4
Antigüedad: 13 años, 7 meses
Puntos: 2
Respuesta: Problema con arrays

Código PHP:
$arreglo = array("broma" => 0"flipar" => 0"reir"=>0);

//...

$clave_mayor=""//En realidad no es necesario poner esto.
$valor_mayor=0;

foreach(
$arreglo as $clave => $valor){
     if(
$clave>$clave_mayor){
          
$clave_mayor=$clave;
          
$valor_mayor=$valor;
     }
}

echo 
"La opción más votada es $clave_mayor con $valor_mayor votos<br>\n";

// Lo he escrito sin probarlo y a lo mejor no te funciona a la primera, pero creo que es la idea que buscas. 

Última edición por aspr66; 26/12/2011 a las 05:06

Etiquetas: arrays
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 11:40.