Foros del Web » Programando para Internet » PHP »

mostrar key value de array de objetos foreach

Estas en el tema de mostrar key value de array de objetos foreach en el foro de PHP en Foros del Web. hola miren tengo este array de objetos,... $data->paises que contiene lo siguiente Debug #1 of 1: array(3) { [0]=> object(stdClass)#22 (4) { ["id"]=> string(1) "1" ...
  #1 (permalink)  
Antiguo 24/09/2013, 07:55
 
Fecha de Ingreso: junio-2010
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 5
mostrar key value de array de objetos foreach

hola miren tengo este array de objetos,... $data->paises que contiene lo siguiente


Debug #1 of 1: array(3) {
[0]=>
object(stdClass)#22 (4) {
["id"]=>
string(1) "1"
["name"]=>
string(9) "argentina"
["status"]=>
string(1) "1"
["updated_at"]=>
string(19) "2013-09-23 15:28:40"
}
[1]=>
object(stdClass)#23 (4) {
["id"]=>
string(1) "2"
["name"]=>
string(5) "chile"
["status"]=>
string(1) "1"
["updated_at"]=>
string(19) "2013-09-23 15:28:43"
}
[2]=>
object(stdClass)#24 (4) {
["id"]=>
string(1) "3"
["name"]=>
string(8) "paraguay"
["status"]=>
string(1) "1"
["updated_at"]=>
string(19) "2013-09-23 15:28:56"
}
}






y lo que quiero es mostrar el nombre , indice,osea
name= argentina
name= chile
name= paraguay


hago esto

Código PHP:
foreach ($data->paises as $key => $value) {
    echo 
$key.'  '.$value->name;

y me sale
Código PHP:
0 argentina1 chile2 paraguay 
como seria lo ideal para mostrarle sin hacer muchos pasos, o no queda otra que pasarlo a arrray y etc,
  #2 (permalink)  
Antiguo 24/09/2013, 08:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: mostrar key value de array de objetos foreach

Cita:
como seria lo ideal para mostrarle sin hacer muchos pasos
¿Cuántos son muchos pasos?

Yo no veo que hagas nada de más.

Cita:
, o no queda otra que pasarlo a arrray
¿Cómo que no queda otra de pasarlo a un array?

De entrada ya tienes un array, no veo que "lo pases" a array en ningún lado.

Cita:
y etc,
¿Qué más?

Tu código es correcto y no tiene nada de sobra, ¿para qué abriste este tema?

No veo ningún error, ni que indiques algún problema.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 24/09/2013, 08:43
Avatar de efenollal  
Fecha de Ingreso: abril-2012
Ubicación: Toa Baja
Mensajes: 63
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: mostrar key value de array de objetos foreach

Entiendo lo que preguntas... Tambien coincido con pateketrueke pues no tienes ningun error. Lo que deseas es que el array salga
Código PHP:
nombre nobmre del pais 
por cada uno de los paises. Acuerdate que tienes los keys del array numericos y por ejemplo argentina vendria siendo el key 0. Lo que debes hacer es esto dentro del foreach.
Código PHP:
echo 'nombre = ' $value->name
Recuerda que nombre es un indice dentro del indice del array. Si quieres accesarlo tienes que hacer otro foreach dentro del foreach que ya hiciste.
  #4 (permalink)  
Antiguo 01/10/2013, 07:13
 
Fecha de Ingreso: junio-2010
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: mostrar key value de array de objetos foreach

Cita:
Iniciado por efenollal Ver Mensaje
Entiendo lo que preguntas... Tambien coincido con pateketrueke pues no tienes ningun error. Lo que deseas es que el array salga
Código PHP:
nombre nobmre del pais 
por cada uno de los paises. Acuerdate que tienes los keys del array numericos y por ejemplo argentina vendria siendo el key 0. Lo que debes hacer es esto dentro del foreach.
Código PHP:
echo 'nombre = ' $value->name
Recuerda que nombre es un indice dentro del indice del array. Si quieres accesarlo tienes que hacer otro foreach dentro del foreach que ya hiciste.
donde queda lo dinamico entonces??

si realmente no se el nombre del key??
no vale ponerlo por mi cuenta
  #5 (permalink)  
Antiguo 01/10/2013, 07:34
Avatar de Dalam  
Fecha de Ingreso: septiembre-2010
Mensajes: 409
Antigüedad: 14 años, 3 meses
Puntos: 56
Respuesta: mostrar key value de array de objetos foreach

esto te daria el resultado que buscas mas todas las keys que contiene el array
Código PHP:
Ver original
  1. foreach ($data->paises as $key => $value) {
  2.     foreach ($value as $key2 => $value2){
  3.        echo $key2.'  '.$value[key2].'<br />';
  4.    }
  5. }
mostraria algo asi
id = 1
name = argentina
status = 1
updated_at = 2013-09-23 15:28:40
id = 2
name = chile
status = 1
updated_at = 2013-09-23 15:28:43
id = 3
name = paraguay
status = 1
updated_at = 2013-09-23 15:28:56

luego puedes limitar las keys que muestra con un if para que solo escriba cuando $key2 es igual a name
  #6 (permalink)  
Antiguo 01/10/2013, 07:56
Avatar de efenollal  
Fecha de Ingreso: abril-2012
Ubicación: Toa Baja
Mensajes: 63
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: mostrar key value de array de objetos foreach

Solo te di un ejemplo para que utilizaras tu mente y sacaras la conclusion correcta. Si lo que quieres es poner nombre = pais entonces no entiendo cual es tu concepto de dinamico. Si quisieras utilizar el key de cada uno para manipular la data entonces haz la solucion que Dalam te dio que es a lo que debias llegar. Si leyeras al final de lo que te escribi decia:
Cita:
Recuerda que nombre es un indice dentro del indice del array. Si quieres accesarlo tienes que hacer otro foreach dentro del foreach que ya hiciste.
Que es exactamente lo que dijo Dalam. Pero esa conclusion no te la debian decir en el foro tenias que sacarla tu investigando y escribiendo tu codigo "dinamico".

Etiquetas: foreach, key, objetos
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 20:42.