Php获取数组中的html div内容

时间:2015-01-21 16:04:09

标签: php regex html-parsing

我想显示包含多个具有相同类名和不同ID名称的div的HTML内容。我想将内容放入数组形式,如下所示:

HTML内容:

<div id='divcont'>
    <div class='abc'>
        <P class='first'>test1</p>
    </div>
    <div class='abc'>
        <P class='first_sec'>test2</p>
    </div>
</div>

结果:

Array
(
    [0] => <P class='first'>test1</p>
    [1] => <P class='first_sec'>test2</p>
)

1 个答案:

答案 0 :(得分:3)

您可以使用正确的tool来完成这项简单任务。

$doc = DOMDocument::loadHTML("
<div id='divcont'>
    <div class='abc'>
        test1
    </div>
    <div class='abc'>
        test2
    </div>
</div>
");

$xpath = new DOMXPath($doc);
$nodes = $xpath->query('//div[@class="abc"]');

foreach ($nodes as $node) {
   $data[] = trim($node->nodeValue);
}

print_r($data);

输出

Array
(
    [0] => test1
    [1] => test2
)