PHP - error de novata pero no lo veo

   
Vista:

error de novata pero no lo veo

Publicado por Diana (9 intervenciones) el 11/01/2012 19:54:07
Buenas¡¡¡
Me ocurre algo con un código muuuuuuy sencillo. El código es el siguiente:

$tabla = array( array(5,5,9,20,1,"UCM"),
array(6,6,6,17,2,"UCM"),
array(6,6,20,30,3,"UCM"));
$tamanio = count($tabla);
$z=3;
for ($x=0;($x<=$z); $x++)
echo $tabla[$x][0]."<br/>";

aunque me muestra el resultado, me da el siguiente error:
Notice: Undefined offset: 3 in C:\wamp\www\PRUEBAS\calendario\array.php on line 8
(también si en lugar de $z uso 3 directamente en la condicción o $tamanio)

Si lo pruebo en un hosting externo me funciona correctamente.

Si en el for cambio la condición por ($x<$z) SI funciona y no me da aviso (quito el =).

Ceo que la sintaxis es correcta así que no se que pasa ¿podeis decirme que hago mal?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

error de novata pero no lo veo

Publicado por Diana (9 intervenciones) el 11/01/2012 20:28:01
No entiendo nada si quito el igual y sumo 1, también me da el mismo error:

for ($x=0;$x<($z+1); $x++){

echo $tabla[$x][0]."<br/>";

}

Solo funciona si pongo solo:
or ($x=0;$x<$z; $x++)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

error de novata pero no lo veo

Publicado por xve (5513 intervenciones) el 11/01/2012 23:36:48
Hola Diana, es muy simple... el array que has creado, dispone de 3 posiciones que son 0,1 y 2, por lo que cuando intentas mostrar el valor 3 te muestra la noticia.

Una buena manera de hacerlo podría ser:
1
for ($x=0;($x<count($tabla)); $x++)

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

error de novata pero no lo veo

Publicado por Diana (9 intervenciones) el 12/01/2012 13:47:18
muchas gracias¡¡¡ me imagino que en el servidor externo no me da esos mensajes por seguridad....graciasssss
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar