提问人:Pekka 提问时间:10/18/2009 更新时间:6/12/2013 访问量:16915
快速将 simpleXMLObject 转换为 STDClass?
Quickly convert simpleXMLObject to STDClass?
答:
1赞
Alex Ciminian
10/18/2009
#1
我不知道是否有办法在不遍历对象的情况下转换对象。我的猜测是你不能。
你可以查看这个线程,它告诉你如何将 SimpleXML 转换为数组,你可以调整它。
6赞
GZipp
10/19/2009
#2
我建议考虑使用 XMLReader,它非常适合提取数据并将其存储为任何类型的数据类型,而不是 SimpleXML。它特别适合经常使用的文档(我使用它,扩展为 RSSReader,用于 RSS),比预期的要快得多,并且作为奖励,它使用的内存比 SimpleXML 少。
75赞
Skyler Johnson
3/20/2011
#3
$my_std_class = json_decode(json_encode($my_simplexmlelement));
$my_assoc_array = json_decode(json_encode($my_simplexmlelement), true);
评论
2赞
Jason Fuller
3/22/2013
+1,这绝对应该是选择的答案。我需要将其转换为 stdClass 的原因是 Drupal 的 SimpleXmlElement 对象存在问题。
0赞
Rounds
2/3/2015
非常好!工作出色的:)
0赞
mahen3d
10/26/2015
这导致将 SimpleXMLElement 类成员变量(例如“MemberTypeArray”)转换为“membertypearray”(小写)如何避免这种情况?并使用这个函数将其转换为标准类?
2赞
Capy
6/12/2013
#4
另一种方法是:
(object)(array)$my_simplexmlelement
不幸的是,如果你有孩子,他们仍然是 SimpleXMLElement
评论