Hola Buenas!
Os comento. estoy trabajando con una API a la que le solicito datos que recibo en JSON. La parte de recibirlos está correcta y de hecho muchas funciones y consultas ya las tengo realizadas.
El problema lo tengo con algunos campos que deberian ser un array de varios indices pero me llegan como objeto. Por ejemplo:
Código:
array([0]stdClass Object(
[drvrs] => stdClass Object (
[1] => stdClass Object (
[id] => 1
[n] => JAVI
[c] => 050
[ds] => Programado
[p] => +346
[r] => 1.76551724138
[ck] => 4951
)
[2] => stdClass Object (
[id] => 2
[n] => PABLO
[c] => w
[ds] => descrip!
[p] => +34909093
[r] => 0
[ck] => 6515
)
....
)
Bien, la consulta típica si no se considera un array y sabes que hay 2 seria algo tipo así:
Código:
$datoquequiero = var[0]->drvrs->1->nm y me devolveria JAVI.
Ahora bien, como no se el numero de usuarios que me va a devolver, tengo que modificar esa parte y convertirla a un array, así que he hecho esto:
Código:
$usuarios = (array) var[0]->drvrs;
Con lo cual, consigo convertirlo a un array y entonces hago la consulta que tocaría hacer:
Código:
$datoquequiero = $usuarios[$i]->nm.
Esto debería devolverme el valor del campo del índice $i que haya hecho (con un bucle, etc..) PERO NO ES ASI.
En cambio si hago un print_r($usuarios); si que me muestra el array.
He revisado como 20 veces todo y no se me ocurre porque fallo.
Como os comentaba, esto solo me pasa con estos que primero me vienen como objeto y yo paso a array...he trabajado con otros array y perfecto!.
A ver si me podéis ayudar al respecto, estoy desesperado