Tengo un objeto stdClass creado a partir de json_decode que no devolverá el número correcto cuando ejecute la función de conteo ($ obj). El objeto tiene 30 propiedades, pero el retorno de la función count() es, por ejemplo, 1.PHP: Cuente un objeto stdClass
¿Alguna idea?
A continuación se muestra un ejemplo de uno de los objetos. (Estoy solicitando la información de tendencias diarias de Twitter). Si este objeto tenía más de una propiedad, el recuento ($ obj) sería igual a 1.
[trends] => stdClass Object
(
[2009-08-21 11:05] => Array
(
[0] => stdClass Object
(
[query] => "Follow Friday"
[name] => Follow Friday
)
[1] => stdClass Object
(
[query] => "Inglourious Basterds" OR "Inglorious Basterds"
[name] => Inglourious Basterds
)
[2] => stdClass Object
(
[query] => Inglourious
[name] => Inglourious
)
[3] => stdClass Object
(
[query] => #songsincode
[name] => #songsincode
)
[4] => stdClass Object
(
[query] => #shoutout
[name] => #shoutout
)
[5] => stdClass Object
(
[query] => "District 9"
[name] => District 9
)
[6] => stdClass Object
(
[query] => #howmanypeople
[name] => #howmanypeople
)
[7] => stdClass Object
(
[query] => Ashes OR #ashes
[name] => Ashes
)
[8] => stdClass Object
(
[query] => #youtubefail
[name] => #youtubefail
)
[9] => stdClass Object
(
[query] => TGIF
[name] => TGIF
)
[10] => stdClass Object
(
[query] => #wish09
[name] => #wish09
)
[11] => stdClass Object
(
[query] => #watch
[name] => #watch
)
[12] => stdClass Object
(
[query] => Avatar
[name] => Avatar
)
[13] => stdClass Object
(
[query] => Ramadhan
[name] => Ramadhan
)
[14] => stdClass Object
(
[query] => Goodnight
[name] => Goodnight
)
[15] => stdClass Object
(
[query] => iPhone
[name] => iPhone
)
[16] => stdClass Object
(
[query] => #iranelection
[name] => #iranelection
)
[17] => stdClass Object
(
[query] => Apple
[name] => Apple
)
[18] => stdClass Object
(
[query] => "Usain Bolt"
[name] => Usain Bolt
)
[19] => stdClass Object
(
[query] => H1N1
[name] => H1N1
)
)
)
¿Podría aclarar su ejemplo? Como lo publicaste, tiene una propiedad '2009-08-21 11: 05', que es una matriz con 20 entradas, por lo que el recuento ($ tendencias) devolvería legítimamente 1. –
Como [señaló Steven] (http://desbordamiento de pila.com/questions/1314745/php-count-an-stdclass-object/1314754 # 1314754), el objeto es de tipo stdClass, que no implementa la interfaz contable, por lo que count () siempre devolverá 1. –
Hopel, tienes razón. Si lanzo el objeto a una matriz, ¡devuelve el número correcto! Excelente. – hellopat