PHPerKaigi 2025

Dom\ParentNode::querySelector

(PHP 8 >= 8.4.0)

Dom\ParentNode::querySelectorВозвращает первый элемент, соответствующий селекторам CSS

Описание

public Dom\ParentNode::querySelector(string $selectors): ?Dom\Element

Возвращает первый элемент, соответствующий селекторам CSS, указанным в параметре selectors.

Список параметров

selectors
Строка, содержащая один или несколько селекторов CSS.

Возвращаемые значения

Возвращает первый объект класса Dom\Element, который соответствует selectors. Возвращает null, если ни один элемент не соответствует.

Ошибки

Выбрасывает исключение DOMException с кодом Dom\SYNTAX_ERR, если значение параметра selectors не является корректной строкой CSS-селектора.

Смотрите также

Добавить

Примечания пользователей 1 note

up
0
kawewong at gmail dot com
9 hours ago
Even the document said "This is the modern, spec-compliant equivalent of DOMParentNode" but in DOMParentNode page there is no new methods like `querySelector()`.

To use this method you have to use new class.
Example:

<?php
$html
= <<<EOT
<div class="row">
<div class="col"><h1 id="heading" class="col1-heading">Hello</h1></div>
<div class="col"><p class="paragraph">Hello world.</p>
</div>
EOT;
$doc = \DOM\HTMLDocument::createFromString($html, LIBXML_HTML_NOIMPLIED);
$elem = $doc->querySelector('#heading');
echo
$elem->getAttribute('class');// result is col1-heading
?>
To Top