Я пытаюсь получить текст из div, где class= 'review-text', используя элемент PHP DOM со следующим HTML (такая же структура) и следующий код.
Однако это не работает
-
HTML
$html = ' <div class="page-wrapper"> <section class="page single-review" itemtype="http://schema.org/Review" itemscope="" itemprop="review"> <article class="review clearfix"> <div class="review-content"> <div class="review-text" itemprop="reviewBody"> Outstanding ... </div> </div> </article> </section> </div> ';
-
Код PHP
$classname = 'review-text'; $dom = new DOMDocument; $dom->loadHTML($html); $xpath = new DOMXPath($dom); $results = $xpath->query("//*[@class and contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]"); if ($results->length > 0) { echo $review = $results->item(0)->nodeValue; }
Синтаксис XPATH для выбора элемента по классу предоставляется на этом Blog
Я пробовал много примеров из StackOverflow, онлайн-уроков, но никто не работает. Я что-то пропустил?