对于每个div标签,请获取其内容

时间:2012-09-17 13:02:33

标签: php html

我正在尝试遍历HTML页面的代码并重新格式化其内容。它在div中有几个div,我想提取它。我尝试过各种形式的爆炸,正则表达式和DOM,但是找不到确切的方法。

示例:

<div class="section1">
 <div class="section2">number 1</div>
</div>
<div class="section1">
 <div class="section2">number 2</div>
</div>

我正在寻找的结果基本上是,对于每个第1部分,从第2部分获取内容,因此输出将是:         1号,2号

有谁知道怎么做这样的事情?

2 个答案:

答案 0 :(得分:3)

使用DOMXPath非常容易:

$doc = new DOMDocument;
$doc->loadHTML(/*...*/); // load the HTML here
$xpath = new DOMXPath($doc);
$result = $xpath->query("//div[@class='section1']/div[@class='section2']/text()");

foreach ($result as $item) {
    echo "$item->wholeText\n";
}

See it in action

答案 1 :(得分:1)

这是一个 jQuery 解决方案,而不是 PHP

$('.section1).each(function() {
    return $(this).html();
});