我正在创建一个项目,在这里我想读取一个HTML表,该表中有3个HTML表并打印其内容。我怎样才能做到这一点?从下面的代码中可以看到,我想从下面提到的表的ROW元素中获取元素。但是在此表之后,还有2个表,我不需要这些信息。当我运行PHP代码时,我可以从所有3个表中查看信息。谢谢。
<p>
<div class="name-block" style="margin-left:200px; margin-top: 35px;">
<h4 style="border: 1px solid black; display: inline;">TIM - Web Server Setup</h4>
</div>
<table id="webserver" align="center" class="table-block">
<tr class="highlight">
<td width="100"><div>IP address</div></td>
<td width="900" contenteditable='true'>TEST</td>
</tr>
<tr class="highlight">
<td width="100"><div>Netmask</div></td>
<td width="900" contenteditable='true'>TEST</td>
</tr>
<tr class="highlight">
<td width="100"><div>Gateway</div></td>
<td width="900" contenteditable='true'></td>
</tr>
<tr class="highlight">
<td width="100"><div>User</div></td>
<td width="900" contenteditable='true'><div width="900" contenteditable></td></div>
</tr>
<tr class="highlight">
<td width="100"><div>Password</div></td>
<td width="900" contenteditable='true'><div width="900" contenteditable></td></div>
</tr>
<tr class="highlight">
<td width="100"><div>Port</div></td>
<td width="900" contenteditable='true'><div width="900" contenteditable></td></div>
</tr>
</table>
</p>
<p><input type="button" id="bt" value="Show Table Data"" /></p>
<?php
$data = file_get_contents('/var/www/html/page.php');
$doc = new domDocument;
@$doc->loadHTML($data);
$i=0;
while(is_object($finance = $doc->getElementsById("table")->item($i)))
{
foreach($finance->childNodes as $nodename)
{
if($nodename->nodeName=='tr')
{
foreach($nodename->childNodes as $subNodes)
{
echo $subNodes->nodeName." - ".$subNodes->nodeValue."<br>";
}
}
else
{
echo $nodename->nodeName." - ".$nodename->nodeValue."<br>";
}
}
$i++;
}
?>
//Other 2 tables below
答案 0 :(得分:1)
您要引用的表具有一个ID,将此ID与getElementById
结合使用以定位此特定表/元素。
getElementById
返回单个元素,因此while循环不再相关。