PHP循环遍历html表并获取标签文本


PHP-Loop through html table and get label text

我有一个HTML表,它的每一行都用一个唯一的id标识。我试图在其中一行中获取标签文本。我尝试使用$dom->getElementById($id);,但它提供了该元素下的所有文本值。

结构如下:

<table>
<tr id="1">.....</tr>
<tr id="2">
<td>
<span>Some text</span>
</td>
<td>
.
.  //Some html elements
.
<table>
<tbody>
<tr>
<td>
<label>label1</label>
</td>                         //I want to collect these labels
<td>
<label>label2</label>
</td>
</tr>
</tbody>
</tabel>
.
.
.

我尝试使用这个$elements = $dom->getElementById('2');代码。它提供了所有的价值观。

输出

 ["nodeValue"]=> string(37) "Select your options *option 1option 2" 

如何才能只获取标签文本。

您试用过getElementsByTagName吗?例如:

$elements = $dom->getElementById('2')->getElementsByTagName('label');

(编辑):

然后你就可以访问这些项目:

for($i=0;$i<$elements->length;$i++) {
       echo "Item $i: " . $elements->item($i)->textContent . "'n";
}