Foros del Web » Programando para Internet » PHP »

un objeto dentro de otro objeto

Estas en el tema de un objeto dentro de otro objeto en el foro de PHP en Foros del Web. Hola como estan ? Bueno estoy intentado recuperar el valor del siguiente objeto. Código PHP: $frutas []=array( 'pera' => 'pera' , 'manzana' => 'manzana' ); ...
  #1 (permalink)  
Antiguo 13/12/2011, 14:43
 
Fecha de Ingreso: agosto-2011
Mensajes: 161
Antigüedad: 12 años, 8 meses
Puntos: 7
un objeto dentro de otro objeto

Hola como estan ? Bueno estoy intentado recuperar el valor del siguiente objeto.


Código PHP:
$frutas[]=array('pera'=>'pera','manzana'=>'manzana');

$verduras[]=array('tomate'=>'tomate','lechu'=>'lechu');

$comida[]=array('frutas'=>$frutas,'verduras'=>$verduras);

/*
$frutas=(object)$frutas;
$verduras=(object)$verduras;*/    


$comida=(object)$comida;

echo 
"mi fruta preferida es la : ".$comida->frutas->pera
Como pueden apreciar, me tendria que volcar "pera",
pero no me imprime nada en pantalla.
¿Es la manera correcta de recuperar ese valor?

Tengo otra pregunta tmb...

Tengo que convertir los array frutas y verduras en obj tambien ? o una vez convirtiendo el array "padre", todo se fuelve un objeto.
// Por eso el comentario del script

Gracias !..
  #2 (permalink)  
Antiguo 13/12/2011, 14:55
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: un objeto dentro de otro objeto

El type-casting solo actúa sobre la variable especificada, no es recursivo de modo que no afecta a los sub-variables.

Además deberías convertir dichos sub-arrays a objetos antes de agregarlos a otro array/objeto.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 13/12/2011, 15:02
 
Fecha de Ingreso: agosto-2011
Mensajes: 161
Antigüedad: 12 años, 8 meses
Puntos: 7
Respuesta: un objeto dentro de otro objeto

haha si ya encontre mis errores... xd

como tu dices.. no es recursivo.. por lo tanto .. solo me queda como objeto el array que especifique... y segundo..
al rellenar los array..
los relleno en cadena.
por lo cual no se usa el corchetes..
malo = $fruta[]=array($1=>1,$2=>2);
bueno = $fruta=array($1=>1,$2=>2);

lo del type-casting .. es dejar a un array como objeto ? .. gracias una vez mas peteke... idolo !
  #4 (permalink)  
Antiguo 13/12/2011, 15:03
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: un objeto dentro de otro objeto

No es mas sencillo asi ?
Código PHP:
$frutas = array('pera' => 'pera''manzana' => 'manzana');
$verduras = array('tomate' => 'tomate''lechu' => 'lechu');
$comida = array('frutas' => $frutas'verduras' => $verduras);
echo 
"mi fruta preferida es la : ".$comida['frutas']['pera']; 
Suerte
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #5 (permalink)  
Antiguo 13/12/2011, 15:10
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: un objeto dentro de otro objeto

Una pregunta: ¿Por qué los array de frutas, verduras y comida los asignas como array?
Mira, hice ésto para que te guiés:
Código PHP:
Ver original
  1. <pre>
  2. <?php
  3. $frutas = array('pera'=>'pera','manzana'=>'manzana');
  4. $verduras = array('tomate'=>'tomate','lechu'=>'lechu');
  5. $comida = array('frutas'=>$frutas,'verduras'=>$verduras);
  6.  
  7. foreach($comida as $index => $arr)
  8.     $comida[$index] = (object)$arr;
  9. $comida = (object)$comida;
  10.  
  11. echo "mi fruta preferida es la : ".$comida->frutas->pera;
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #6 (permalink)  
Antiguo 13/12/2011, 15:42
 
Fecha de Ingreso: agosto-2011
Mensajes: 161
Antigüedad: 12 años, 8 meses
Puntos: 7
Respuesta: un objeto dentro de otro objeto

Hola soul, !... Gracias !...
no soy mucho de los foreach hahah pues me complican un poco...
Entiendo que los sub array de comida se transforman en objetos .. pero lo que no capte.. es el $comida[$index]

Me lo podrias explicar en simpleas palabras?..
Muchas gracias!

Etiquetas: objeto
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 22:22.