Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problemas con la lectura de elementos de un objeto

Estas en el tema de Problemas con la lectura de elementos de un objeto en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola, quisiera que me ayuden...tengo un problemilla...en un archivo tengo una clase y dentro de esta la sgte función: function seleccion_tubo(){ $cnx=conexionDB::getInstancia(); //instancia para la ...
  #1 (permalink)  
Antiguo 30/04/2009, 15:13
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años, 8 meses
Puntos: 0
Problemas con la lectura de elementos de un objeto

Hola, quisiera que me ayuden...tengo un problemilla...en un archivo tengo una clase y dentro de esta la sgte función:
function seleccion_tubo(){
$cnx=conexionDB::getInstancia(); //instancia para la conexion
$muestras=array();
$sql="select * from tubo";
$rs = $cnx->ejecutar($sql);
while($array=$rs->FetchRow()){ //recorrer los resultados
$muestra=new muestra();
$muestra->codigo=$array["idTubo"];
$muestra->nombre=$array["Nombre"];
$muestras[]=$muestra;
}
return $muestras;
}
pues como se dan cuenta yo tengo un objeto $muestra que llamo de otra clase, en esta clase se encuentran declaradas las variables codigo y nombre y los meto en el objeto creado...luego(en un intento desesperado) este objeto se lo doy a un array :-/ y es este el que devuelvo a la función...La cosa es que necesito esos datos...tanto en nombre como el codigo en otro archivo...y no se como recorrer $muestras...intente hacer esto:
$v=$n->seleccion_tubo(); //jalo la funcion de la clase anterior
echo count($v); aca me funciona bien,aparecen la cantidad de elementos que tengo en la base de datos
foreach($v as $valor => $nombre) {
print "$nombre => $valor\n";
}
y me sale el sgte error:

Catchable fatal error: Object of class muestra could not be converted to string in C:\AppServ\www\chamba_princ\muestras.php on line 7

Que es lo que puedo hacer???
  #2 (permalink)  
Antiguo 30/04/2009, 22:36
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: Problemas con la lectura de elementos de un objeto

$nombre que tipo de variable es???

en ves del print has un var_dump($nombre);

¿¿que resulta??


NOTA que tu error, es claro... "Objeto de la clase muestra no puede ser convertido en cadena..."





además, por favor... lee el manual de PHP... tu foreach() lo empleas al revés!

http://php.net/foreach
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 30/04/2009, 23:12
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Problemas con la lectura de elementos de un objeto

Pues cuando pongo: var_dump($nombre); ...me bota lo siguiente:
object(muestra)#5 (2) { ["codigo"]=> string(5) "tubo1" ["nombre"]=> string(9) "tubo rojo" } object(muestra)#6 (2) { ["codigo"]=> string(5) "tubo2" ["nombre"]=> string(9) "tubo azul" } object(muestra)#7 (2) { ["codigo"]=> string(2) "15" ["nombre"]=> string(9) "tubo rojo" }

que son los datos que busco, la variable $nombre es String.... Pero sigo teniendo el mismo problema para jalar los datos

Última edición por xtian87; 30/04/2009 a las 23:40
  #4 (permalink)  
Antiguo 01/05/2009, 00:00
 
Fecha de Ingreso: octubre-2008
Ubicación: Mar del Plata
Mensajes: 50
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Problemas con la lectura de elementos de un objeto

Hola xtian87:

Prueba con

foreach($v as $o) {
print $o->nombre ;
}

Saludos
  #5 (permalink)  
Antiguo 01/05/2009, 07:29
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Problemas con la lectura de elementos de un objeto

guuuaaaaa....gracias "mpiazzon" funciona bien con eso...muchisimas gracias, me salvastes...
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 02:10.