Как я могу обернуть два выбранных элемента в div, используя PHP DOMDocument? - PullRequest
0 голосов
/ 21 февраля 2011

Я выбрал 2 элемента (братьев и сестер), используя PHP DOMDocument (с небольшой помощью 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. Клонируйте элементы (h3 и ul) и вставьте их как дочерние элементы только что созданного div
  3. Удалить старые элементы (оригинальные h3 и ul)

Есть ли более простой способ сделать это?

1 Ответ

2 голосов
/ 21 февраля 2011

Вы можете использовать метод appendChild() для перемещения существующего узла. Итак:

  • Создать новый div
  • Используйте appendChild в новом div, чтобы сделать выбранные элементы дочерними по отношению к этому div
...