简单的html dom用class排除段落

时间:2014-06-08 12:49:36

标签: php html parsing dom simple-html-dom

我有这个代码,我想要第一段作为输出我试图用段落过滤但我得到第二段

我只对第一段文字感兴趣。

   <div class="bq_fq_lrg" style="margin:0px">
     <p>this text i want.</p>
     <p class="bq_fq_a">
       <a href="xz.html">this text i dont want.</a>
     </p>
   </div>

我尝试了这个,但是它给了第二段

  foreach($html->find('div.bq_fq_lrg p[0]') as $e)

$html变量是SimpleHtmlDom

的实例

我得到的段落内容如下:

 $op1 = $e->innertext . '<br>';

1 个答案:

答案 0 :(得分:2)

您可以使用属性中的!来获取该特定值。考虑这个例子:

include 'simple_html_dom.php';
$html_string = '<div class="bq_fq_lrg" style="margin:0px">
     <p>this text i want.</p>
     <p class="bq_fq_a">
       <a href="xz.html">this text i dont want.</a>
     </p>
   </div>';
$html = str_get_html($html_string);
foreach($html->find('div.bq_fq_lrg p[!class]') as $value) {
    echo $value->innertext; // this text i want.
}