php - foreach 循环中的 SimpleXMLElement 一直嵌套在 PHP 中
问题描述
我使用 SimpleXMLElement 如下:
$xml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><xml></xml>');
$xml->addChild('tests');
然后我尝试在上面添加单独的测试,如下所示:
foreach($tests as $test){
$node1 = $xml->tests->addChild('test');
$node1->addAttribute('name', $test[0]);
$node1->addAttribute('example', $test[1]);
$subnode1 = $node1->addChild('header');
$subnode1->addAttribute('example', 'example');
}
echo $xml->asXML();
我希望完成的输出如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<tests>
<test name="test name" example="example">
<header example="example"></header>
</test>
<test name="test name" example="example">
<header example="example"></header>
</test>
</tests>
</xml>
但相反,我得到了更像这样的东西:
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<tests>
<test name="test name" example="example">
<header example="example">
<test name="test name" example="example">
<header example="example">
<test name="test name" example="example">
<header example="example"></header>
</test>
</header>
</test>
</header>
</test>
</tests>
</xml>
请对我做错了什么有任何建议吗?
解决方案
推荐阅读
- python - 损失函数正在减少,但度量函数保持不变?
- angular - 将角度核心和角度 cli 从 v5.1 更新到 v7.2 后出现错误
- ios - 无法在 iPad 上从 Uint16Array 创建 HALF_FLOAT_OES 纹理
- typescript - 如何获取量角器中所有元素的文本并将其与我的预期文本进行比较?
- linear-regression - 模型参数初始化
- javascript - Create-React-App2 是否适合更大的应用程序?
- reactjs - 将函数传递给子组件的奇怪结果
- python - 根据 pandas DataFrame 中的另一列填充缺失值
- kotlin - Kotlin 中 : 和 = 运算符之间的区别
- python - Pandas 'Str' 对象没有属性 'to_csv'