使用DOM和PHP将条目附加到XML文件

用户名此处

我正在尝试使用DOM / PHP将条目添加到XML文件中,但我终生无法让它们出现在XML文件中。

XML模式如下:

<alist>
    <a>
          <1>text a</1>
          <2>text a</2>
    </a>
    <a>
          <1>text b</1>
          <2>text b</2>
    </a>
</alist>

而PHP是:

$xmlFile = "../../data/file.xml";
$dom = DOMDocument::load($xmlFile);
$v1 = "text c";
$v2 = "text c";

//create anchor
$alist = $dom->getElementsByTagName("alist");

//create elements and contents for <1> and <2>
$a1= $dom->createElement("1");
$a1->appendChild($dom->createTextNode($v1));
$a2= $dom->createElement("2");
$a2->appendChild($dom->createTextNode($v2));

//Create element <a>, add elements <1> and <2> to it.
$a= $dom->createElement("a");
$a->appendChild($v1);
$a->appendChild($v2);

//Add element <a> to <alist>
$alist->appendChild($a);

//Append entry?
$dom->save($xmlFile);
W

getElementsByTagName()返回具有该标签名称的元素节点的列表。您不能将节点追加到列表中。您只能将它们附加到列表中的元素节点。

您需要检查列表中是否包含节点,然后阅读第一个节点。

不允许使用数字元素名称,例如12数字不能是xml限定名称的第一个字符。即使对它们进行编号e1, e2, ...也不是一个好主意,但这样会使定义变得困难。如果需要该数字,则将其放入属性值。

$xml = <<<XML
<alist>
    <a>
          <n1>text a</n1>
          <n2>text a</n2>
    </a>
    <a>
          <n1>text b</n1>
          <n2>text b</n2>
    </a>
</alist>
XML;

$dom = new DOMDocument();
$dom->preserveWhiteSpace = FALSE;
$dom->formatOutput = TRUE;
$dom->loadXml($xml);
$v1 = "text c";
$v2 = "text c";

// fetch the list
$list = $dom->getElementsByTagName("alist");
if ($list->length > 0) {
  $listNode = $list->item(0);

  //Create element <a>, add it to the list node.
  $a = $listNode->appendChild($dom->createElement("a"));

  $child = $a->appendChild($dom->createElement("n1"));
  $child->appendChild($dom->createTextNode($v1));

  $child = $a->appendChild($dom->createElement("n2"));
  $child->appendChild($dom->createTextNode($v2));

}

echo $dom->saveXml();

输出:https : //eval.in/147562

<?xml version="1.0"?>
<alist>
  <a>
    <n1>text a</n1>
    <n2>text a</n2>
  </a>
  <a>
    <n1>text b</n1>
    <n2>text b</n2>
  </a>
  <a>
    <n1>text c</n1>
    <n2>text c</n2>
  </a>
</alist>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用PHP和AJAX将数据附加到json文件

来自分类Dev

使用PHP和AJAX将数据附加到json文件

来自分类Dev

如何使用文件中的文本和 tkinter python 中的条目将文本附加到标签

来自分类Dev

使用JAXB将编组对象附加到XML文件中

来自分类Dev

使用JAXB将编组对象附加到XML文件中

来自分类Dev

使用PHP将JSON附加到文件中的数组

来自分类Dev

使用php将javascript对象附加到json文件

来自分类Dev

无法使用php将数据附加到文件

来自分类Dev

使用php将javascript对象附加到json文件

来自分类Dev

使用AJAX和PHP将<options>附加到<select>

来自分类Dev

使用Webpack将SVG附加到DOM

来自分类Dev

Hadoop将数据附加到hdfs文件,并忽略重复的条目

来自分类Dev

使用Dom将标记添加到XML文件(最小)

来自分类Dev

PHP XML附加到创建的文件

来自分类Dev

将stderr和stdout附加到文件

来自分类Dev

使用sed将文本附加到文件

来自分类Dev

使用PHP将XML树作为子级附加到另一个XML

来自分类Dev

使用Java将节点附加到现有XML文件中

来自分类Dev

如何使用Perl将XML数据节点附加到现有文件?

来自分类Dev

附加到文件特定的 syslog 条目

来自分类Dev

如何在不使用PHP加载整个内容的情况下附加到大型XML(文件)

来自分类Dev

如何使用 jQuery 将(大量)多个元素附加到 DOM

来自分类Dev

PHP将内容附加到文件(文件的读取/写入)

来自分类Dev

PHP将内容附加到文件(文件的读取/写入)

来自分类Dev

PHP 将文件文本附加到所有 javaScript 文件

来自分类Dev

如何使用Sendgrid和Multer将文件附加到电子邮件

来自分类Dev

使用python(和matplotlib?)将页面附加到现有的pdf文件中

来自分类Dev

使用python(和matplotlib?)将页面附加到现有的pdf文件中

来自分类Dev

使用PHP将新对象附加到外部JSON文件中现有的数组

Related 相关文章

  1. 1

    使用PHP和AJAX将数据附加到json文件

  2. 2

    使用PHP和AJAX将数据附加到json文件

  3. 3

    如何使用文件中的文本和 tkinter python 中的条目将文本附加到标签

  4. 4

    使用JAXB将编组对象附加到XML文件中

  5. 5

    使用JAXB将编组对象附加到XML文件中

  6. 6

    使用PHP将JSON附加到文件中的数组

  7. 7

    使用php将javascript对象附加到json文件

  8. 8

    无法使用php将数据附加到文件

  9. 9

    使用php将javascript对象附加到json文件

  10. 10

    使用AJAX和PHP将<options>附加到<select>

  11. 11

    使用Webpack将SVG附加到DOM

  12. 12

    Hadoop将数据附加到hdfs文件,并忽略重复的条目

  13. 13

    使用Dom将标记添加到XML文件(最小)

  14. 14

    PHP XML附加到创建的文件

  15. 15

    将stderr和stdout附加到文件

  16. 16

    使用sed将文本附加到文件

  17. 17

    使用PHP将XML树作为子级附加到另一个XML

  18. 18

    使用Java将节点附加到现有XML文件中

  19. 19

    如何使用Perl将XML数据节点附加到现有文件?

  20. 20

    附加到文件特定的 syslog 条目

  21. 21

    如何在不使用PHP加载整个内容的情况下附加到大型XML(文件)

  22. 22

    如何使用 jQuery 将(大量)多个元素附加到 DOM

  23. 23

    PHP将内容附加到文件(文件的读取/写入)

  24. 24

    PHP将内容附加到文件(文件的读取/写入)

  25. 25

    PHP 将文件文本附加到所有 javaScript 文件

  26. 26

    如何使用Sendgrid和Multer将文件附加到电子邮件

  27. 27

    使用python(和matplotlib?)将页面附加到现有的pdf文件中

  28. 28

    使用python(和matplotlib?)将页面附加到现有的pdf文件中

  29. 29

    使用PHP将新对象附加到外部JSON文件中现有的数组

热门标签

归档