在 PHP 中将多维数组转换为 XML 对象 [重复]
Posted
技术标签:
【中文标题】在 PHP 中将多维数组转换为 XML 对象 [重复]【英文标题】:Convert a multidimensional array to an XML object in PHP [duplicate] 【发布时间】:2014-03-08 04:58:40 【问题描述】:我有一个这样的多维数组:
$array = array(
"hello" => "hola",
"another_array" => array(
"key" => "best key ever",
"another" => "yes, another key",
),
"coolarray" => array(
"bool" => true,
"string" => "this is a string!",
),
);
我想要这样的课程:
class MyClass
public $array;
public function __construct($array)
// something
$this->array_to_xml($array);
public function array_to_xml($array)
// convert array to xml
然后我希望能够做这样的事情:
$string = $this->array->coolarray->string;
我该怎么做?
【问题讨论】:
@Martijn 我已经尝试了其中的 3 个答案,但我仍然不知道如何将它用作这样的对象:$string = $this->array->coolarray->string;
【参考方案1】:
这个问题很多
不知道你为什么提到 XML,听起来你只是想要一个对象。
例如看这个答案: https://***.com/a/11854285/543455
$obj = json_decode(json_encode($array));
【讨论】:
以前从未使用过 JSON。我会试一试的。我提到 XML 是因为我正在制作我自己的使用 XML 转换的开源项目版本。我试图修改它,但我把它弄坏了。 更新:这是说我正在尝试获取非对象的属性。 好的,这是非常糟糕的做法。看看这个答案:***.com/a/4790485/801496这是更好的方法。 我保留对不良做法的判断。两个内置函数调用与递归用户空间函数,老实说,我不确定什么是最好的方法,我怀疑它在很大程度上取决于您要转换的数组以上是关于在 PHP 中将多维数组转换为 XML 对象 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
在 php 中将 XML 文档转换为数组时,有没有办法将其转换回来并将其保存为属性为元素的 XML 文件?