Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
xml php之前的插入_Php_Xml_Dom - Fatal编程技术网

xml php之前的插入

xml php之前的插入,php,xml,dom,Php,Xml,Dom,第一次来这里:o)。。。需要你的帮助,因为这让我在这么远的地方发疯。。。对 我有以下xml结构: <?xml version="1.0" encoding="UTF-8"?> <juiceboxgallery galleryTitle="whatever"> <image imageURL="images/23.jpg" thumbURL="thumbs/23.jpg" linkURL="images/23.jpg" linkTarget="_blank"

第一次来这里:o)。。。需要你的帮助,因为这让我在这么远的地方发疯。。。对

我有以下xml结构:

<?xml version="1.0" encoding="UTF-8"?>
<juiceboxgallery galleryTitle="whatever">
    <image imageURL="images/23.jpg" thumbURL="thumbs/23.jpg" linkURL="images/23.jpg" linkTarget="_blank" sourcePath="webadded"></image>
    <image imageURL="images/24.jpg" thumbURL="thumbs/24.jpg" linkURL="images/24.jpg" linkTarget="_blank" sourcePath="webadded"></image>
    ... and so on ...
</juiceboxgallery>
。。即使在检查是否有“X”图像元素时:

$images=$doc->getElementsByTagName("image");
echo "<hr>imagenes: ".$images->length."<hr>"; 
$images=$doc->getElementsByTagName(“图像”);
echo“
images:”.$images->length.“
”;
。。请提供一些帮助:|

必须在父节点上调用insertBefore()和appendChild()等方法。文档本身也是一个节点。因此,它有方法并允许添加多个节点,但只允许添加单个元素节点

在您的情况下,以下是一些可能的方法

使用
DOMNode::parentNode
属性

$nodo_zero = $doc->getElementsByTagName('image')->item(0);
$nodo_zero->parentNode->insertBefore($nuevo_nodo,$nodo_zero);
或者获取
juiceboxgallery
节点并使用
DOMNode::firstChild
属性

$gallery = $doc->getElementsByTagName('juiceboxgallery')->item(0);
$gallery->insertBefore($nuevo_nodo, $gallery->firstChild);

哦我的。。。非常感谢你。。你救了我一天!!它工作得很好…:o) 。。我尝试了第二种方法,现在我刚开始就得到了我的新图像!!
$gallery = $doc->getElementsByTagName('juiceboxgallery')->item(0);
$gallery->insertBefore($nuevo_nodo, $gallery->firstChild);