小编典典

如何将数组转换为 SimpleXML

all

如何在 PHP 中将数组转换为 SimpleXML 对象?


阅读 78

收藏
2022-04-20

共1个答案

小编典典

一个简短的:

<?php

$test_array = array (
  'bla' => 'blub',
  'foo' => 'bar',
  'another_array' => array (
    'stack' => 'overflow',
  ),
);
$xml = new SimpleXMLElement('<root/>');
array_walk_recursive($test_array, array ($xml, 'addChild'));
print $xml->asXML();

结果是

<?xml version="1.0"?>
<root>
  <blub>bla</blub>
  <bar>foo</bar>
  <overflow>stack</overflow>
</root>

键和值被交换 - 你可以array_flip()在 array_walk 之前修复它。array_walk_recursive需要 PHP
5。你可以array_walk改用,但你不会进入'stack' => 'overflow'xml。

2022-04-20