PHP DOMDocument 将节点从一个文档移动到另一个文档

2023-11-24

好吧,我已经尝试了几个小时来实现这一目标,但似乎找不到解决方案,所以我在这里!

我有 2 个 DOMDocument,我想将一个文档的节点移动到另一个文档。我知道两个文档的结构,并且它们属于同一类型(所以合并它们应该没有问题)。

有人可以帮助我吗?如果您需要更多信息,请告诉我。

Thanks!


将节点复制(或)移动到另一个DOMDocument您必须将节点导入到新的DOMDocument with importNode()。取自手册的示例:

$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");
$node = $orgdoc->getElementsByTagName("element")->item(0);

$newdoc = new DOMDocument;
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");

$node = $newdoc->importNode($node, true);
$newdoc->documentElement->appendChild($node);

其中第一个参数importNode()是节点本身,第二个参数是一个布尔值,指示是否导入整个节点树。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP DOMDocument 将节点从一个文档移动到另一个文档 的相关文章

随机推荐

  • “使用未定义类型”与 unique_ptr 转发声明的类和默认的移动构造函数/赋值

    在下面的代码中 是避免编译错误并在 A cpp 中手动包含 B h 实现移动构造函数 赋值的唯一方法吗 A h include
  • 通知与 API 26 兼容

    我没有看到任何有关如何将 NotificationCompat 与 Android O 一起使用的信息Notification Channels 我确实看到一个新的构造函数需要channelId但如何获取 Compat 通知并在 Notif
  • 创建多行表头

    我有一个表格 其中的列标题是使用以下说明设置的 table setColumnHeader 我想知道如何创建多级表头 例如在本页 从 Vaadin 6 7 3 开始 使用库存 Vaadin 表组件目前无法实现此目的 在 Vaadin 7 中
  • 为什么我无法在 python 中创建轮子?

    以下是我正在运行的命令 python setup py bdist wheel usage setup py global opts cmd1 cmd1 opts cmd2 cmd2 opts or setup py help cmd1 c
  • JavaScript 中数组的三个等号返回 false。为什么?

    我知道 通常称为身份运算符 被比较的值必须具有相同的类型和值才能被视为相等 那么为什么下面的行返回 false 呢 Array asdf Array asdf 它们不相等 因为在每个语句中都创建了一个新数组 每个数组都是一个具有相同内容的全
  • 质因数分解 - 列表

    我正在尝试实现一个功能primeFac 以正整数作为输入n并返回一个列表 其中包含质因数分解中的所有数字n 我已经到目前为止 但我认为在这里使用递归会更好 不知道如何在这里创建递归代码 基本情况是什么 首先 My code def prim
  • 如何在 PHP 中将 12 小时制时间转换为 24 小时制时间?

    我正在使用以下函数 我想要 24 小时时钟格式的时间 但这给了我 12 小时的时间 我究竟做错了什么 来自文档用于date The H格式字符给出 24 小时格式的小时 另外 您可以使用G如果你不想领先0中午之前几个小时 Examples
  • 在java中旋转图像

    我有一张平移卡的图像 当我尝试将其旋转 45 度并保存时 我得到了一张裁剪后的图像 旋转图像的代码是 BufferedImage dimg new BufferedImage w h img getType Graphics2D g dim
  • 是否可以在不阻止所有表单的情况下使用 ShowDialog?

    我希望我能足够清楚地解释这一点 我有我的主表单 A 它使用 form Show 打开 1 个子表单 B 使用 form Show 打开第二个子表单 C 现在我希望子表单 B 使用 form ShowDialog 打开表单 D 当我这样做时
  • 从 MS Word 粘贴到文本区域

    我在用着https github com akzhan jwysiwyg 我想实现从Word 粘贴 但我不知道要查找什么以及如何处理它 我更多地寻找正则表达式模式或要捕获的字符列表以及用什么来替换它们 Ideas 我最终使用了这个 Repl
  • 方法签名中的“易失性”? [复制]

    这个问题在这里已经有答案了 这个很奇怪 我有以下代码 class A protected A clone throws CloneNotSupportedException return A super clone 当我通过 showmyc
  • Capybara、RSpec 和 Devise:有什么方法可以通过避免缓慢登录和直接设置会话来加快集成测试速度?

    对于几乎每个集成测试 用户都必须登录 Devise 这需要花费很多时间 所以我想知道是否有一种方法可以设置用户会话 而无需访问登录页面 输入详细信息 然后按登录按钮 也许 Devise 中内置了一个帮助程序方法 可以立即让给定用户登录 非常
  • 对 Django 声称的 MVC 感到困惑,它到底是什么?

    那么 Django 到底实现了什么 好像有 Models Views Templates 模型 数据库映射 视图 从以下位置获取相关数据 通过模板对其进行建模和格式化 模板 根据视图给出的数据显示 HTML 编辑 S Lott 在对上一篇文
  • Bash 脚本 cd 到路径名中包含空格的目录

    我在 macOS X 上使用 Bash 我想创建一个简单的可执行脚本文件 该文件在运行时会更改为另一个目录 但是 该目录的路径中有空格 你到底是怎么做到的 这就是我所拥有的 文件名称 cdcode 文件内容 cd My Code 现在 这不
  • C++:警告:“...”声明的可见性高于其字段“...::”的类型

    我收到这两个警告 在 MacOSX 上使用 GCC 4 2 Users az Programmierung openlierox build Xcode src main cpp 154 0 Users az Programmierung
  • 邮政编码(美国邮政编码)验证

    Locked 这个问题及其答案是locked因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 我以为人们会一起开发小型代码项目 但我没有看到它们 所以这是一个简单的项目 验证有效美国邮政编码的代码 我知道有邮政编码数据库 但
  • 如何展平 Laravel 递归关系集合(树集合)?

    如何将具有层次结构自引用模型 树集合的集合展平为单个维度集合 我有一个有父母和孩子的自引用模型 我希望结果返回一个雄辩的集合 而不是一个简单的集合或数组 为了方便演示 已使用数组作为结果结果 关系是这样声明的 public function
  • 用于指南的 C# 正则表达式

    我需要解析字符串并在每个 Guid 值周围添加单引号 我想我可以使用正则表达式来做到这一点 但我不完全是正则表达式专家 是否有一个好的正则表达式可以用来识别 Guid 我的第二个问题是一旦我找到一个有效的正则表达式我假设我会使用Regex
  • 合并两个 pandas 数据框会导致“重复”列

    我正在尝试合并两个包含相同键列的数据框 其他一些列也具有相同的标题 尽管行数不相等 并且在合并后 这些列与原始标题 重复 并给出后记 x y 等 有谁知道如何让 pandas 删除下面示例中的重复列 这是我的Python代码 import
  • PHP DOMDocument 将节点从一个文档移动到另一个文档

    好吧 我已经尝试了几个小时来实现这一目标 但似乎找不到解决方案 所以我在这里 我有 2 个 DOMDocument 我想将一个文档的节点移动到另一个文档 我知道两个文档的结构 并且它们属于同一类型 所以合并它们应该没有问题 有人可以帮助我吗