Эхо всех абзацев определенного класса

Есть ли способ отобразить (с помощью PHP) все абзацы (HTML-страницы), которые принадлежат определенному классу? Я пробовал что-то подобное, но это не сработало (ничего не повторилось)

$dom = new DOMDocument;
$dom->loadHTML($html); //the code I need is contained in the $html variable
foreach($dom->getElementsByTagName('p') as $paragraph) {
if ( $paragraph->getAttribute('class') === 'items') {
echo $paragraph->nodeValue."<br>";
}
}

1

Решение

Резервное копирование того, что упоминает Призрак, лучше использовать strpos, если у вас более одного класса. Возьми это как пример.

<?php

$html = "<p class='items two small-font'>This is paragraph 1</p> <br> <hr> <p class='items'>This is paragraph 2</p> <br> <hr> <p class='noitem'>This is paragraph 3</p> <br> <hr>";

$dom = new DOMDocument;
$dom->loadHTML($html);

foreach($dom->getElementsByTagName('p') as $paragraph) {

$class = $paragraph->getAttribute('class');

if ( strpos( $class , 'items') !== false ) {
echo $paragraph->nodeValue."<br>";
}

}

?>
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]