如何使用PHP的DOMDocument用div包装两个选中的元素?

时间:2011-02-21 05:27:13

标签: php domdocument

我使用PHP的DOMDocument选择了2个元素(兄弟姐妹)(在DOMXPath的帮助下)。

$dom = new DOMDocument('1.0', 'UTF-8');

$dom->preserveWhiteSpace = FALSE;

$dom->loadHTML($content);

$xpath = new DOMXPath($dom);

$query = '//h3[text() = "Amenities"]';

$title = $xpath->query($query)->item(0);

$list = $title->nextSibling;

这会获得h3标题($title)和ul列表($list)。

我想用div换行,然后添加id

我确信我可以执行id部分,但我不确定如何在DOMDocument中包装这些元素。

我会吗?

  1. 创建新的div元素
  2. 克隆元素(h3ul)并将其作为新创建的div
  3. 的子项插入
  4. 删除旧元素(原始h3ul
  5. 有更简单的方法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用appendChild()方法移动现有节点。所以:

  • 创建新div
  • 在新div上使用appendChild,使您选择的元素成为此div的子元素