我有一个从json_decode创建的stdClass对象,当我运行count($
obj)函数时不会返回正确的数字。该对象具有30个属性,但count()函数的返回值为1。
有任何想法吗?
以下是其中一个对象的示例。(我正在从Twitter请求每日趋势信息)。如果此对象具有多个属性,则count($ obj)等于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
)
)
)
问题在于count的目的是对数组中的索引进行计数,而不是对对象的属性进行计数(除非它是实现Countable接口的自定义对象)。尝试像下面那样将对象转换为数组,看看是否有帮助。
$total = count((array)$obj);
简单地将对象转换为数组并不总是可行,但是作为一个简单的stdClass对象,它应该可以在这里完成工作。
问题内容: 我对数组还很陌生。我需要一些帮助-我有一些JSON,并且已经通过一些PHP对其进行了运行,这些PHP基本上可以解析JSON并对其进行解码,如下所示: 实际上,这种情况一直持续发生-但是-我的问题是这一部分。我需要能够在for循环中调用此函数,然后遍历每个部分(主页,得分,缩写,到等)。我将如何处理? 问题答案: 您可以使用来获取对象的属性的数组,或致电与获得的关联数组。 例: 输出:
问题内容: 我正在使用第三方存储系统,无论出于什么原因,无论输入什么内容,它都只会返回stdClass对象。因此,我很想知道是否有一种方法可以将stdClass对象转换/转换为给定类型的完整对象。 例如: 我只是将stdClass转换为数组并将其提供给BusinessClass构造函数,但是也许有一种方法可以还原我不知道的初始类。 注意:我对“更改存储系统”类型的答案不感兴趣,因为它不是关注点。请
问题内容: 我在将对象stdClass转换为数组时遇到问题。我已经尝试过这种方式: 要么 要么 强制转换之前的数组充满了一条记录,而我尝试强制转换之后的数组为空。如何在不删除行的情况下进行转换/转换? 转换前的数组: 如果我尝试使铸造后为空NULL 我也尝试过此功能,但始终为空: 问题答案: 所述 懒惰 单行方法 如果您愿意损失一点点性能,则可以使用JSON方法在一个内衬中执行此操作(尽管有些人报
问题内容: 我有一个这样的对象: 我需要在HTML表中获取ID和名称,但是似乎很难遍历此对象。TIA。我知道我需要先到达“值数组”,然后再到达“组”对象,但是我要遍历对象和数组之间的过渡以及foreach与基于索引的迭代。 例如,我尝试了这个: 它遍历对象,但也给我没用 问题答案:
问题内容: 我从postmeta获取post_id为: 当我尝试 我有这样的数组: 而且我不知道如何遍历它,如何获得这样的数组 知道我该怎么做吗? 问题答案: 最简单的方法是对对象进行JSON编码,然后将其解码回数组: 或者,如果您愿意,也可以手动遍历对象:
本文向大家介绍php计算一个文件大小的方法,包括了php计算一个文件大小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php计算一个文件大小的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的php程序设计有所帮助。