致命错误:未捕获TypeError:传递给DOMNode :: appendChild()的参数1必须是DOMNode的一个实例,字符串在

时间:2018-04-30 23:01:04

标签: php web-crawler

我正在尝试制作一个简单的抓取工具,捕获页面的各个元素,抓取工具本身会提供我需要的信息,但我想将其写入XML文件,但问题是:{{1 }}

这是我的代码:

Fatal error: Uncaught TypeError: Argument 1 passed to DOMNode::appendChild() must be an instance of DOMNode, string given

我想要什么输出:

...
$data = array(
'img-code' => $element->img,
'ean' => $eant,
'desc' => $description
);
echo $data['img-code'];

$doc = new DOMDocument();

$eanXML = $doc->createElement('Ean');
$doc->appendChild($data['ean']);

$imgXML = $doc->createElement('Img');
$doc->appendChild($data['img-code']);

$descXML = $doc->createElement('Description');
$doc->appendChild($data['desc']);

echo $doc->saveXML();
....

1 个答案:

答案 0 :(得分:2)

根据功能要求:http://php.net/manual/en/domnode.appendchild.php

附加到子节点,而不是字符串。

$eanXML = $doc->createElement('Ean');
$doc->appendChild($eanXML); //append to 'Ean'