gpt4 book ai didi

PHP 简单 XML : Remove items with for

转载 作者:可可西里 更新时间:2023-10-31 22:07:22 25 4
gpt4 key购买 nike

我可以使用以下方法从 simpleXML 元素中删除一个项目:

unset($this->simpleXML->channel->item[0]);

但我不能用 a for:

    $items = $this->simpleXML->xpath('/rss/channel/item');
for($i = count($items); $i > $itemsNumber; $i--) {
unset($items[$i - 1]);
}

某些项目已从 $items 中删除(Netbeans Debug 可以确认这一点)但是当我再次获取路径时 (/rss/channel/item) 没有任何内容被删除。

怎么了?

最佳答案

SimpleXML 不处理节点删除,为此您需要使用 DOMNode。令人高兴的是,当您将节点导入 DOMNode 时,这些实例指向同一棵树。

所以,你可以这样做:

<?php

$items = $this->simpleXML->xpath('/rss/channel/item');
foreach ($items as $item) {
$node = dom_import_simplexml($item);
$node->parentNode->removeChild($node);
}

关于PHP 简单 XML : Remove items with for,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4730764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com