我正在使用PHP读取JSON数据,并且该数据包含空对象(如{})。所以问题是,我必须以不同的方式处理对象为空但无法找到足够好的方法进行检查的情况。empty(get_object_vars(object))看起来太吓人了,效率很低。有没有好的检查方法?
{}
empty(get_object_vars(object))
您要反序列化多少个对象?除非empty(get_object_vars($object))事实证明或强制转换是主要的放慢速度/瓶颈,否则我不会担心– Greg的解决方案就可以了。
empty(get_object_vars($object))
不过,我建议$associative在解码JSON数据时使用标志:
$associative
json_decode($data, true)
这会将JSON对象解码为普通的旧PHP数组,而不是作为stdClass对象。然后,您可以使用empty()并创建用户定义类的对象来代替使用来检查空对象stdClass,从长远来看,这可能是个好主意。
stdClass
empty()