脚本宝典收集整理的这篇文章主要介绍了使用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> ';
$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; }
在Blog提供了按类别选择元素的XPATH语法
我已经尝试过StackOverflow,在线教程的许多例子,但没有一个似乎工作.我错过了什么吗?
//div[@class="review-text"]
编辑:
为了方便开发,您可以在http://www.xpathtester.com/test测试您的XPath查询在线.
EDIT2:
测试了这段代码;它工作完美.
<?PHP $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> '; $classname = 'review-text'; $dom = new DOMDocument; $dom->loadHTML($html); $xpath = new DOMXPath($dom); $results = $xpath->query("//*[@class='" . $classname . "']"); if ($results->length > 0) { echo $review = $results->item(0)->nodeValue; } ?>
以上是脚本宝典为你收集整理的使用PHP DOM文档,通过其类选择HTML元素并获取其文本全部内容,希望文章能够帮你解决使用PHP DOM文档,通过其类选择HTML元素并获取其文本所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。