我試圖從div中獲取文本,其中class = 'review-text',通過使用具有以下HTML(相同結構)的PHP DOM元素和以下代碼。使用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,在線教程的示例,但似乎都沒有工作。我錯過了什麼嗎?
''// div [contains(@class,'review-text')]' –