我正在尝试从xml中删除子节点.

我的脚本正在工作..但它删除了几个孩子……而不仅仅是我要删除的那个…

你能看看并告诉我我的问题是什么吗?

XML文件:

3

2

1

delete.php文件:

header("Content-type: text/html; charset=utf-8");

$record = array(

'id' => $_POST['id'],

);

$users = new DOMDocument();

$users->load("xmp.xml");

$suser = simplexml_load_file("xmp.xml");

$count = 0;

$user = $users->getElementsByTagName("record");

foreach($user as $value)

{

$tasks = $value->getElementsByTagName("id");

$task = $tasks->item(0)->nodeValue;

if ($task == $record["id"]) {

$users->documentElement->removeChild($users->documentElement->childNodes->item($count));

}

$count++;

}

$users->save("xmp.xml");

?>

解决方法:

获取要删除的节点.在它的parentNode上调用removeChild(),例如

$node->parentNode->removeChild($node);

在旁注中,使用XPath时可以使用更少的代码执行此操作:

$id = /* some integer value */

$dom = new DOMDocument;

$dom->load('file.xml');

$xpath = new DOMXPath($dom);

$query = sprintf('/events/record[./id = "%d"]', $id);

foreach($xpath->query($query) as $record) {

$record->parentNode->removeChild($record);

}

echo $dom->saveXml();

将删除 < id>的元素具有存储在$id中的值的子节点.

标签:php,xml

来源: https://codeday.me/bug/20191003/1848050.html

php删除xml头部,使用php删除xml文件中的子节点相关推荐

  1. XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 查找校验xml文件中相同的节点属性值 java遍历文件夹解析XML

    XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 以及查找xml文件中相同的节点属性值 项目背景:这是本人实习中所碰到的项目,当时感觉很棘手, ...

  2. iOS 15.3+ SwiftUI中List子项目禁止被删除但头部仍显示删除按钮的解决

    问题现象 SwiftUI视图中List的子项目Cell设置成禁止被删除,测试该Cell确实无法被删除,但Cell头部的删除按钮仍然被显示: 如上图所示:List中第一个子项目Cell处于编辑状态,被设 ...

  3. 删除控制_别了 Flash!Win10已全面删除:已从控制面板和安装文件中消失

    由于漏洞百出加之被HTML5日益取代,Adobe的Flash Player组件将在2020年底从Windows 10中删除.此前,Adobe也表示,计划2020年逐步结束对Flash的支持. 包括微软 ...

  4. 【Groovy】Xml 反序列化 ( 使用 XmlParser 解析 Xml 文件 | 获取 Xml 文件中的节点和属性 | 获取 Xml 文件中的节点属性 )

    文章目录 一.创建 XmlParser 解析器 二.获取 Xml 文件中的节点 三.获取 Xml 文件中的节点属性 四.完整代码示例 一.创建 XmlParser 解析器 创建 XmlParser 解 ...

  5. spring代码异常捕获到logback logging.config=logback-spring.xml文件中不能输出异常e.printStackTrace...

    在spring中使用logging.config=logback-spring.xml将日志转存到了文件中.但是代码中的捕获的异常无法用 e.printStackTrace 打印到文件中.使用如下方法 ...

  6. java dom4j 去除空行_如何从XML文件中删除多余的空行?

    总之;我在XML文件中生成了很多空行,并且我正在寻找一种方法将它们作为一种倾斜文件的方式来删除它们.我怎样才能做到这一点 ?如何从XML文件中删除多余的空行? 有关详细说明,目前,我有这个XML文件: ...

  7. C#xml创建修改读取删除帮助类XmlHelper.cs

    <strong><span style="color:#ff0000;">[XML帮助类]C#xml创建修改读取删除帮助类XmlHelper.cs < ...

  8. java 解析/操作 xml 几种常用方式 xml的增加/删除/修改

    java 解析/操作 xml 几种常用方式 xml的增加/删除/修改 首先,我们先介绍几种常用的xml解析器. 1. 介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方 ...

  9. java dom忽略doctype_使用DOM解析xml,DOCTYPE被删除

    在编辑xml时,java的dom如何删除doctype? 得到了这个xml文件: ]> test1 test1 test1 我的功能很基本: public static void EditSta ...

最新文章

  1. pandas索引复合索引dataframe数据、索引其中多个水平(level)的多个数据行(index rows from different levels)、使用元组tuple表达复合索引的指定行
  2. 入门NLP、实现语音识别和语音合成,用这个开源工具SoEasy | 英伟达NLP公开课
  3. 【Android】MTK Android 编译命令
  4. php 文档输出,PHP输出
  5. Nodejs连接mysql的增、删、改、查操作
  6. CF891D Sloth
  7. springmvc转换器converter的使用
  8. FPGA时钟倍频,分频
  9. CCP/XCP标定协议解析
  10. matlab导入excel数据算方差,基于MATLAB与EXCEL工具的均值-方差模型
  11. 小米手环模拟门禁卡读卡失败_一个手环走天下?可以!
  12. [Java] Java基础
  13. 你还不清楚某个系统文件的作用吗?Windows系统文件详解【大全】
  14. Python 使用office365邮箱自动发送邮件
  15. 施乐5065服务器显示FF,(转)施乐6550/7500/5065彩机部份代码
  16. 江西财经职业学院计算机应用技术代号,江西财经职业学院计算机协会第三届PPT创意大赛...
  17. 太吾绘卷加载卡54_太吾绘卷支持度卡40%提高支持率解决办法分享
  18. 如何去掉微软正版的产品验证提醒
  19. 简单解决phpjm加密问题 免费phpjm解密工具
  20. java web入门经典 pdf_Java Web入门经典 (王国辉陈英) PDF

热门文章

  1. 历史上的今天:阿帕网退役;Quintus 收购 Mustang;同步电流磁芯存储器获得专利...
  2. 别再说Python简单!
  3. 两天,我把分布式事务搞完了!
  4. 超10000支团队参赛,阿里云首届云原生编程挑战赛完美收官
  5. 国际研究机构:阿里巴巴语音AI中国第一
  6. 应用10秒部署、成本降低50% 阿里云serverless容器改写云计算极限
  7. Netscape 重构软件倒闭了,但我仍坚定地站重写!
  8. 华为布局智慧屏的背后
  9. 不用掉一根头发!用 Flutter + Dart 快速构建一款绝美移动 App
  10. 全方位解析阿里云核心技术竞争力,CSDN 独家在线峰会来了!