Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] echo Array[][] No muestra valor "cadena"

Estas en el tema de echo Array[][] No muestra valor "cadena" en el foro de PHP en Foros del Web. Hola y desde ya agradezco su ayuda a lo que considero debe ser una pregunta conceptual de 1º grado. El problema es el siguiente: Tengo ...
  #1 (permalink)  
Antiguo 20/02/2013, 03:03
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 2 meses
Puntos: 306
echo Array[][] No muestra valor "cadena"

Hola y desde ya agradezco su ayuda a lo que considero debe ser una pregunta conceptual de 1º grado.

El problema es el siguiente:

Tengo un array que obtengo con:
Código PHP:
fetchAll(PDO::FETCH_ASSOC
A modo de prueba y para ver que valores me trae realizo dos ciclos anidados con foreach:
Código PHP:
foreach($materias0 as $key=>$materias1)
{
    echo 
"[".$key."]";
    foreach(
$materias1 as $key=>$mat)
    {    
        echo 
" [ ".$key." : ".$mat." ] ";
        
    }
    echo 
"<br/>";

Cuyo resultado (una parte) es:
Código PHP:
[0] [ id_materia ] [ asignatura Análisis Matemático I ] [ nivel 
[
1] [ id_materia ] [ asignatura Fundamentos de Informática ] [ nivel 
[
2] [ id_materia ] [ asignatura Física I ] [ nivel 
Es decir, hasta ahí bien.
Ahora cuando trato de imprimir ("echo") lo siguiente:
Código PHP:
echo "ID: <".$materias0[0][id_materia].">";
echo 
"Materia: <"$materias0[0][asignatura] .">";
echo 
"Nivel: <".$materias0[0][nivel].">"
Me imprime:
Cita:
ID:<1>
Materia:
Nivel:<1>
Al fin la pregunta: ¿Por qué no me muestra el valor de asignatura en este caso, pero sí muestra cuando el valor es un Integer?

Seguramente es una pregunta de 1º grado, pero why?
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--
  #2 (permalink)  
Antiguo 20/02/2013, 04:00
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: echo Array[][] No muestra valor "cadena"

Las keys alfanumericas del array deben ir entre comillas.
  #3 (permalink)  
Antiguo 20/02/2013, 04:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: echo Array[][] No muestra valor "cadena"

Código PHP:
Ver original
  1. echo "ID: <".$materias0[0]["id_materia"].">";
  2. echo "Materia: <". $materias0[0]["asignatura"] .">";
  3. echo "Nivel: <".$materias0[0]["nivel"].">";

La sintaxis correcta es esta pero como bien dices deberia fallar para todos los campos...

Para ver el contenido tienes una opcion mucho mas facil

Código PHP:
Ver original
  1. echo "<pre>";
  2. print_r($materias0);
  3. echo "</pre>";
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #4 (permalink)  
Antiguo 20/02/2013, 04:24
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 2 meses
Puntos: 306
Respuesta: echo Array[][] No muestra valor "cadena"

Gracias por responder dashtrahs, pero sigue igual.
Intenté con ambas comillas y sigue sin aparecer.
Código PHP:
Ver original
  1. echo '<'. $materias0[12]['asignatura'] .'>';
Código PHP:
Ver original
  1. echo "<". $materias0[12]["asignatura"] .">";

Supongo que la falta de sueño me impide ver el por qué.

EDITO: Tal como dije antes la falta de sueño hace que cometa errores tontos.
El problema no era de php sino de html, ya que al agregar "<" y ">" transformaba eso en un tag y de ahí al desastre sólo un paso.

He cambiado eso por guiones medios y después de no se cuantas horas de leer y buscar al fin logro ver la información que sabía que allí estaba.

Gracias dashtrash igualmente y disculpa la molestia.
Gracias quimfv, en realidad eso lo use al principio, lo único es que estaba tratando de comprender como es que se guardaba esa información en el array, digamos estudiando un poco el array.
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--
  #5 (permalink)  
Antiguo 21/02/2013, 03:07
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: echo Array[][] No muestra valor "cadena"

Si quieres ver < > usa las correspondientes entities &gt; y &lt;

Código PHP:
Ver original
  1. echo "&lt;". $materias0[12]["asignatura"] ."&gt;";
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: echo, muestra, valor
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 14:25.