PHP Simple HTML DOM Parser如何仅从第一个表获取TR

时间:2014-09-02 06:17:47

标签: php html simple-html-dom

我有HTML代码,如下面的结构,如何在PHP中使用 PHP Simple HTML DOM find方法从第一个表中获取TR。

    <table width="100%" cellspacing="0" cellpadding="0" border="0" class="convertedTable">
      <tbody>
       <tr>
         <td>
           <table width="100%" cellspacing="0" cellpadding="0" border="0">
            <tbody>
              <tr>
               <td>...</td>
               </tr>
             </tbody>
            </table>
           </td>
          </tr>
<tr>
         <td>Some text</td>
          </tr>
<tr>...</tr>
....
         </tbody>
        </table>

我尝试了这些条件,但不起作用。

`

$file->find('/body/table/tr')
$file->find('/body/table[!class]/tr')
$file->find('body table tr')

感谢您的建议。

2 个答案:

答案 0 :(得分:2)

您可以尝试这样简单的事情:

foreach($html->find('tr') as $tr) {
    // do something with $tr
    break; // stop now
}

或者像这样指定:

$tr = $html->find('tr', 0); // zero based index selector

答案 1 :(得分:0)

应该只需几行即可轻松完成这项工作:

$table = $html->find('table', 0);
foreach($table->find('table') as $tb) {
foreach($tb->find('tr') as $tr) {
        echo $tr;
    }
}

结果:

<tr>
 <td>...</td>
</tr>