dsm13698679318 2014-07-08 06:57
浏览 403
已采纳

如何使用php提取p标签内的所有内容

i am trying to extract the contents of all p tags of html inside div class and trying to insert whole stream into one variable array

this are html code example

<html>
...
<div class=news-box>

   <h2>Heading</h2>
   <p>afsdfdfha adhfaksdhf adfhakhf adfhaskfdha fsahfkasdhfaasfdjhasdf ahdfkahsd</p>
   <p>afsdfdfha adhfaksdhf adfhakhf adfhaskfdha fsahfkasdhfaasfdjhasdf ahdfkahsd</p>
   <p>afsdfdfha adhfaksdhf adfhakhf adfhaskfdha fsahfkasdhfaasfdjhasdf ahdfkahsd</p>
   <p>yuoyuouoyuoyuyu oyuiouioyuioyuyiouyoiy youyoiyuioyuioyuyoiuyiuyiyuioyu yuyiu</p>
</div>
...
</html>

i want to extract all content in p and trying to insert whole stream into variable for to insert in database, i am using below these php codes

<?php

include('simple_html_dom.php');

$url = 'http://www.example.com';

$html1=file_get_html($url);
$content=array();
foreach($html1->find('div.story-box p') as $e)
{
    $content=$e;
}
echo $content;
?>

why it is showing only last line... want to show all contents in p tag after assigning in one variable not $e

  • 写回答

3条回答 默认 最新

  • douzhuo3233 2014-07-08 07:27
    关注

    If you're confused at printing arrays (just use print_r() by the way), just concatenate the strings:

    $contents = '';
    foreach($html1->find('div.story-box p') as $e) {
        $contents .= $e;
        // or $contents .= $e . '<br/>';
    }
    
    echo $contents;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?