PHP DOMDocument, поиск конкретных элементов - PullRequest
1 голос
/ 21 февраля 2010

Я ищу, чтобы найти определенный атрибут определенного элемента в документе HTML, используя PHP DOMDocument.

В частности, есть div с уникальным набором классов, и внутри него только один диапазон. Мне нужно получить атрибут стиля этого элемента span.

Пример:

<div class="uniqueClass"><span style="text-align: center;" /></div>

В этом примере, так как uniqueClass является единственным экземпляром этого класса в документе, мне нужно получить строку:

выравнивание текста: по центру;

Ответы [ 2 ]

4 голосов
/ 21 февраля 2010

Вы должны использовать класс DOMXPAth

$doc = new DOMDocument; 
// We don't want to bother with white spaces
$doc->preserveWhiteSpace = false;

$doc->loadHTML($htmlSource);

$xpath = new DOMXPath($doc);

// We starts from the root element
$query = '//div[@class= uniqueClass]/span';

$entries = $xpath->query($query);

$spanStyle = $entries->current()->getAttribute('style')
1 голос
/ 21 февраля 2010
$xpath = new DomXPath($doc);
$result = $xpath->evaluate('//div[@class=uniqueClass]/span/@style');
...