简单的html dom - 除第一个之外的所有tr

时间:2012-07-30 09:55:25

标签: php simple-html-dom

我想从第二个开始找到所有<tr>,但我不知道如何做到正确..

$items = $html->find('tr');

这段代码获得所有trs但我想要除第一个之外的所有人,因为那个包含<th>

5 个答案:

答案 0 :(得分:6)

切断第一个元素。

$items = array_slice($html->find('tr'), 1)

答案 1 :(得分:1)

当您使用$html->find('tr');获取列表时,创建一个不关心第一个“索引/行”的循环。

答案 2 :(得分:1)

如果Simple html dom像Jquery一样工作,请尝试使用如下:

$items = $html->find('tr:not(:has(th)');

答案 3 :(得分:0)

你可以从$ html-&gt; find('tr')获得所有trs;从这个你可以添加条件忽略如果对象的下一个元素是“th”标签然后你可以忽略该tr。

答案 4 :(得分:0)

正如PoulsQ建议你可以这样做

$firstTr = true;

foreach($html->find('tr') as $tr) {
  if(!$firstTr) {
    // YOUR LOGIC FOR A TR HERE
  }
  else {
    $firstTr = false;
  }
}

但是我认为如果你查询DOM以忽略第一个元素,那将是更好的代码。