php – 通过Reflection访问SplObjectStorage数据
发布时间:2020-12-13 17:23:43 所属栏目:PHP教程 来源:网络整理
导读:是否可以使用Reflection或其他方法访问SplObjectStorage的数据?当我在其上使用print_r时,我可以看到有一个包含所有数据的数组的私有属性$storage,但我无法以任何方式使用Reflection访问它.是否有其他可能的解决方案来获取数据而不用foreach迭代集合? 解决
是否可以使用Reflection或其他方法访问SplObjectStorage的数据?当我在其上使用print_r时,我可以看到有一个包含所有数据的数组的私有属性$storage,但我无法以任何方式使用Reflection访问它.是否有其他可能的解决方案来获取数据而不用foreach迭代集合?
解决方法
无法通过Reflection访问$storage属性,因为它不存在.
在类上调用print_r(或var_dump)时看到的是调试信息.此信息通过类的内部 与切片相关的问题显示以下代码段: $r = new ReflectionClass('DateTime'); var_dump($r->hasProperty("timezone")); 上面的代码将告诉您该类没有timezone属性,即使您可以访问DateTime对象上的timezone属性.原因是此属性未声明,它仅通过内部 总结:反思内部类的“属性”通常不会成功,因为这些属性通常不存在. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |