php - 嵌套 simplexml

标签 php xml simplexml

尝试使用 SimpleXmL 编写 xml。需要嵌套一些标签

 $xml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><orders></orders>');
        $orderlist = $xml->addChild('order');
        $orderlist->addAttribute('shipdate', date('Y-m-d H:i:s'));

        $orderlist = $xml->addChild('delivery');
        $orderlist->addAttribute('weight', '0');

这将输出:

  <?xml version="1.0" encoding="utf-8"?>
    <orders>
        <order shipdate="2017-10-11 13:44:12" />
        <delivery weight="0" />
    <order/>
    </orders>

但需要标签不要在标签之前关闭。 希望它看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<orders>
  <order shipdate="2016-07-14T14:41:30">
    <delivery weight="0" />
  </order>
</orders>

最佳答案

尝试以下操作:

 $xml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><orders></orders>');
        $orderlist = $xml->addChild('order');
        $orderlist->addAttribute('shipdate', date('Y-m-d H:i:s'));

        $delivery = $orderlist->addChild('delivery');
        $delivery->addAttribute('weight', '0');

这将添加 <delivery>里面的标签<order>标签。并提供如下输出:

<?xml version="1.0" encoding="utf-8"?>
<orders>
    <order shipdate="2017-10-11 22:28:13">
        <delivery weight="0"/>
    </order>
</orders>

关于php - 嵌套 simplexml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46696906/

相关文章:

php - 在 PHP 中连接 3 个表以创建一个数组

java - XML 命名空间如何在没有工作网络连接的情况下工作?

php - 添加 xml-stylesheet 标签 simpleXML php

php - 动态页面的访客计数器

php - 如何将 Web 应用程序的访问权限限制在一台机器上?

php - 将查询结果转换为二维数组

xml - 如何以 HTML 表格格式显示此 XML 数据..?

java - JAXB 如何将复合键字段映射为同级

xml - 解析器错误 : String not started expecting ' or " in php

php - 在 php simplexml xpath 中查找子项