Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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
Php 从XML中删除具有特定值的节点_Php_Xml_Dom_Simplexml_Nodes - Fatal编程技术网

Php 从XML中删除具有特定值的节点

Php 从XML中删除具有特定值的节点,php,xml,dom,simplexml,nodes,Php,Xml,Dom,Simplexml,Nodes,我想根据子节点值从XML中删除节点 这是我的XML结构: <?xml version="1.0" encoding="UTF-8"?> <urlset> <url> <loc></loc> <prority></priority> <lastmod></lastmod> </url> <url&

我想根据子节点值从XML中删除节点

这是我的XML结构:

<?xml version="1.0" encoding="UTF-8"?>   
<urlset>
    <url>
        <loc></loc>
        <prority></priority>
        <lastmod></lastmod>
    </url>
    <url>
        <loc></loc>
        <prority></priority>
        <lastmod></lastmod>
    </url>
    <url>
        <loc></loc>
        <prority></priority>
        <lastmod></lastmod>
    </url>
</urlset>
或者这个:

$loc = dom_import_simplexml($node->loc);
$url = dom_import_simplexml($node);
$url->parentNode->removeChild($url);
这是反复试验,请帮助

$url = dom_import_simplexml($node);
$url->parentNode->removeChild($url);
这应该能满足您的需要,但由于您的状况,它不起作用:

(strpos($node->loc, 'cHash') || strpos($node->loc, 'index.php')) !== FALSE
难道不是这样吗

(strpos($node->loc,'cHash')| strpos($node->loc,'index.php'))

$url = dom_import_simplexml($node);
$url->parentNode->removeChild($url);
(strpos($node->loc, 'cHash') || strpos($node->loc, 'index.php')) !== FALSE