当前位置: 首页 > 知识库问答 >
问题:

PHP中如何将数组中的属性添加到XML转换中

卫振
2023-03-14

我正在用PHP将数组转换为XML数据

        $test_array = array (
            'bla' => 'param',
            'foo' => 'param',

        );
        $xml = new SimpleXMLElement('<params/>');
        array_walk_recursive($test_array, array ($xml, 'addChild'));
        dd($xml->asXML());

我得到的XML如下所示:

<?xml version="1.0"?>
<params>
<param>bla</param>
<param>foo</param>
</params>

我想在xml项中添加如下所示的属性:

<param name='paramname' type='int'>bla</param>

如何修改我的数组以便将atributes添加到XML项中?

共有1个答案

宿淳
2023-03-14

设置键

示例:

$test_array = array (
    'bla' => 'param',
    'foo' => 'param',
);
$xml = new SimpleXMLElement('<params/>');
array_walk_recursive($test_array, array ($xml, 'addChild'));
$xml->foo['bar']= 'baz';
print_r($xml->asXML());

结果:

<?xml version="1.0"?>
<params>
    <param>bla</param>
    <param>foo</param>
    <foo bar="baz" />
</params>

https://www.php.net/manual/en/simpleXML.examples-basic.php#example-5891

 类似资料:
  • 我想把下面的XML转换成PHP数组。有什么建议可以让我如何做到这一点吗?

  • 问题内容: 我想将下面的XML转换为PHP数组。关于如何执行此操作的任何建议? 问题答案: 另一个选择是SimpleXML扩展(我相信大多数PHP安装都标配该扩展名。) http://php.net/manual/zh/book.simplexml.php 您的示例的语法看起来像这样

  • 问题内容: 如果我在PHP中定义了一个数组,例如(我没有定义其大小): 我是否可以使用以下内容简单地添加元素? PHP中的数组没有add方法,例如? 问题答案: 您所描述的两种方法都可以。 是相同的:

  • 我试图向数组中添加一个元组(例如,2项元组)。 我得到的是: 找不到接受提供的参数的“=”的重载 提示:我试图超载每个参考书的=: ...但是没有弄对。 有什么想法吗。。。解决方案

  • 本文向大家介绍如何在PHP中将数组转换为SimpleXML?,包括了如何在PHP中将数组转换为SimpleXML?的使用技巧和注意事项,需要的朋友参考一下 我们可以使用array_walk_recursive()函数解决上述问题。array_walk_recursive()是内置的PHP函数。此函数将数组转换为XML文档,其中将数组的键转换为值,并将数组的值转换为XML元素。 让我们用一个简单的例

  • 本文向大家介绍在PHP中,如何将对象元素添加到数组?,包括了在PHP中,如何将对象元素添加到数组?的使用技巧和注意事项,需要的朋友参考一下 代码如下- 示例 输出结果 这将产生以下输出- 创建对象,然后将其推到数组的末尾(以前存在)。 另类