有没有办法做到这一点?目前我正在使用这种方法来浏览wikipedia条目中具有一类wikitable的每个表的td。
foreach ($html->find('table.wikitable td') as $key => $info)
{
$text = $info->innertext;
}
但是,我想要做的是为每个共享类wikitable的表分配单独的循环。我无法弄清楚如何做到这一点。
有某种语法吗?我想做这样的事情
$first_table = $html->find('table.wikitable td', 0); // return all the td's for the first table
$second_table = $html->find('table.wikitable td', 1); // second one
答案 0 :(得分:2)
我可能不完全理解你的问题,但似乎$html->find
只返回一个数组,在你的情况下是一个表数组:
$tables = $html->find('table.wikitable');
然后,您可以遍历表格并在每个表格中找到td:
foreach( $tables as $table )
{
$tds = $table->find('td');
foreach( $tds as $td )
{
...
}
}
如果您只想定位第二张表,可以使用:
$table = $tables[1];
或类似的东西。