Foros del Web » Programando para Internet » PHP »

problema while y array

Estas en el tema de problema while y array en el foro de PHP en Foros del Web. Hola. Tengo una duda con el siguiente código: Código PHP: for( $i = 0 ;  $i < 5 ; $i ++){    $r1 [ $i ...
  #1 (permalink)  
Antiguo 07/08/2006, 02:41
 
Fecha de Ingreso: febrero-2006
Mensajes: 297
Antigüedad: 11 años, 9 meses
Puntos: 1
problema while y array

Hola. Tengo una duda con el siguiente código:
Código PHP:
for($i=0$i<5;$i++){
  
$r1[$i]= "a";


Segun esto, no debería escribirse la letra a en las 5 posiciones del array? Y si se hace count(r1) debería dar 5?

Lo he probado y solo me escribe una a y si hago count me da valor 1. Hay algo mal? Hay que inicializar el array o vale con dejarlo asi? Como sería para que escriba una letra en las 5 posiciones disitintas?
  #2 (permalink)  
Antiguo 07/08/2006, 03:14
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 12 años, 2 meses
Puntos: 18
Yo he probado tu código y a mi me va bien. Hago un print_r y veo el array relleno de a's. ¿Qué haces para comprobar que se ha rellenado el array?
  #3 (permalink)  
Antiguo 07/08/2006, 03:27
 
Fecha de Ingreso: febrero-2006
Mensajes: 297
Antigüedad: 11 años, 9 meses
Puntos: 1
Para verlo hago esto:
Código PHP:
$i=count (r1);

  
$a=0;

    while( 
$a $i){
        
$mensaje .=$i " " $r1[$a] ;
  
        
$a++;
    } 
Supuestamente debería salir "5 a" cinco veces no? pues me muestra 1 a. como si solo tubiese un registro.
  #4 (permalink)  
Antiguo 07/08/2006, 03:41
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 12 años, 2 meses
Puntos: 18
Cita:
Iniciado por leeann Ver Mensaje
Para verlo hago esto:
Código PHP:
$i=count (r1);

  
$a=0;

    while( 
$a $i){
        
$mensaje .=$i " " $r1[$a] ;
  
        
$a++;
    } 
Supuestamente debería salir "5 a" cinco veces no? pues me muestra 1 a. como si solo tubiese un registro.
En la primera linea te falta el signo $ para la variable r1. Un saludo.
  #5 (permalink)  
Antiguo 07/08/2006, 03:41
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Procura mostrar tu código completo para evitar especulaciones y andar "adivinando" posibles errores...
http://www.forosdelweb.com/f18/por-favor-aporten-datos-sobre-consultas-no-somos-adivinos-412989/

Resulta que en el código para "ver" el resultado no tienen ningúna salida (echo, printf, print_r, etc...)... algo simple pero ahí queda la "duda".

Junto tus ideas, agrego un par de cosas, corrigo el detalle mensionado arriba... funciona perfectamente:
Código PHP:
<?php

for($i=0$i<5;$i++){
  
$r1[$i]= "a";

}

$i=count ($r1);

$a=0;
$mensaje='';
while( 
$a $i){
    
$mensaje .=$i " " $r1[$a]."<br>" ;
    
$a++;
}
echo 
$mensaje
?>
Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #6 (permalink)  
Antiguo 07/08/2006, 03:43
 
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona
Mensajes: 200
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola,
pruebalo de esta forma,
Código PHP:
$num count($r1);
$mensaje "";

for(
$a 0$a $num$a ++){
   
$mensaje .= $num." -> ".$r1[$num]."<br>";
}

echo 
$mensaje
creo que el problema esta en que la variable mensaje no la inicializas,

Salud2
  #7 (permalink)  
Antiguo 07/08/2006, 03:45
 
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona
Mensajes: 200
Antigüedad: 13 años, 7 meses
Puntos: 0
he tardado en responder,
ya veo que han solucionado el problema
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




La zona horaria es GMT -6. Ahora son las 10:03.