希望我能得到一些帮助,PHP不是我的强项,仍在学习绳索......
所以我有一个创建RSS文件的php表单,帮助台工作人员将在内部Intranet上使用RSS源,以及时了解网络中出现的当前问题。
该表单旨在用作管理Feed的前端,我需要做的最后一件事是能够从Feed中删除特定项目。
我想删除具有特定GUID的项目,当表单创建项目时GUID只是使用time()给出一个值,我一直在找我想要删除的项目,我想我需要搜索项目以匹配guid元素然后删除它出现的孩子...有人可以给我一些有用的指针吗?
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<item>
<title>Exchange Server being rebooted</title>
<description>Exchange servers are currently being rebooted</description>
<author>Self</author>
<link></link>
<pubDate>Fri, 26 Aug 2011 08:37:12</pubDate>
<guid>1314311832</guid>
</item>
</channel>
</rss>
当我在表单中显示来自RSS的项目时,我将放置一个GUID链接,点击该链接时应该删除该项目。
希望这是有道理的。
谢谢,
答案 0 :(得分:0)
您可以使用DOMXPath检索GUID元素,并使用removeChild()删除它们:
$xpath = new DOMXPath($yourDOMDocument);
$query = '//rss/channel/item/guid[boolean(.="1314311832")]';
$entries = $xpath->query($query);
foreach ($entries as $entry) {
$entry->parentNode->parentNode->removeChild($entry->parentNode);
}