【发布时间】:2014-03-01 21:00:33
【问题描述】:
我见过接受SimpleXMLElement 对象并将其转换为数组的代码,例如。
$sxe = simplexml_load_file($file);
$arr = (array)$sxe;
但我找不到任何关于 (array) 部分的 PHP 文档。
谁能指出我正确的方向?谢谢。
【问题讨论】:
我见过接受SimpleXMLElement 对象并将其转换为数组的代码,例如。
$sxe = simplexml_load_file($file);
$arr = (array)$sxe;
但我找不到任何关于 (array) 部分的 PHP 文档。
谁能指出我正确的方向?谢谢。
【问题讨论】:
(array) 符号只是一个 cast - 在 PHP 行话中它被称为 Type Juggling
在这种情况下,它将simplexml_load_file(类型为object)的响应转换为一个数组。
PHP 文档的in this section 描述了这种情况下发生的情况:
如果将对象转换为数组,则结果是一个数组,其 元素是对象的属性。键是成员变量 名字,[...]
我建议你输出转换后的数组,看看你有什么
var_dump($arr)
【讨论】:
我不建议为此使用标准的 PHP 方法。相反,我建议使用 serializer 库。使用 IMO 非常简单。
它允许不同类型的转换。我自己将它用于Xml => Object 绑定。用作魅力。但据我所知,它也允许您需要的这种转换类型。
【讨论】: