如何用PHP选择ALL div的内容

时间:2014-07-13 10:59:49

标签: php html

我想在PHP中选择每个DIV标签的内容。

想象一下,我们有这个HTML页面:

<html>
    <body>
        <div class="one">Content1</div>
        <span>blah..</span>
        <div class="two">Content2</div>
    </body>
</html>

现在,我希望获得每个DIV标记内容,例如,根据该HTML代码,我希望在一个变量中有Content1,在另一个变量中有Content2,依此类推...... 。 只需轻松访问部件即可。就是这样。

每个页面都有随机数量的DIV标签,所以我需要一个灵活的代码来检测DIV标签,并将每个标签的内容放在数组或任何类型的变量中。

怎么做?

3 个答案:

答案 0 :(得分:2)

DOMDocument

$divs = array();
$HTML = '<html>
    <body>
        <div class="one">Content1</div>
        <span>blah..</span>
        <div class="two">Content2</div>
    </body>
</html>';

$doc = new DOMDocument();
$doc->loadHTML($HTML);

foreach($doc->getElementsByTagName('div') as $div) {
   array_push($divs, $div->textContent);
}
var_dump($divs);

example

答案 1 :(得分:1)

尝试使用strip_tags()函数:

http://php.net/manual/en/function.strip-tags.php

答案 2 :(得分:0)

您可以下载 PHP Simple HTML DOM Parser


并访问div标签,如下所示:

$html = file_get_html('urltopage.com');
foreach($html->find('div') as $e)
echo $e->innertext . '<br>';