Я ожидал, что DomDocumentFragment будет вести себя так, как если бы он был фрагментом DomDocument, но это не так. Например, он не имеет базовых методов PHPGT querySelector.
Как мне манипулировать содержимым фрагмента, не помещая его в родительский HTMLDocument и не запрашивая снова его выбор?
Код:
$domDoc = new \phpgt\dom\HTMLDocument("<div>previously</div>");
$frag = $domDoc->createDocumentFragment();
$frag->appendXML("<div><span>hello</span></div>");
$frag->querySelector("span")->textContent = "goodbye";
выдает следующую ошибку:
PHP Fatal error: Uncaught Error: Call to undefined method phpgt\dom\DocumentFragment::querySelector()
В соответствии с MDN, методы querySelector * должны быть доступны в DocumentFragment, поэтому я открыл вопрос на github и закрываю вопрос.
Других решений пока нет …