繁体   English   中英

使用simple_html_dom获取第三个子元素

[英]get third child element with simple_html_dom

 $html = '<tr> <td class="aa">SomeText</td> <td class="aa">text 2</td> <td class="aa" align="right"> <font class="aa">text 3</font> </td> <td class="aa" align="center"> </td> <td class="aa" align="right">text 4</td> <td class="aa" align="right">text 5</td> </tr> <tr> <td class="aa">SomeText</td> <td class="aa">text 2</td> <td class="aa" align="right"> <font class="aa">text 3</font> </td> <td class="aa" align="center"> </td> <td class="aa" align="right">text 4</td> <td class="aa" align="right">text 5</td> </tr>'; $dom = str_get_html($html); $tds = $dom -> find("td"); foreach($tds as $td){ if ($td -> innertext == $search){ echo $td -> next_sibling() -> innertext; } } 

问题是这会返回文本2,我正在尝试获取文本4

我也试过下面的代码:

 $dom = str_get_html($html); $tds = $dom -> find('td', 0)->text(); foreach($tds as $td){ if ($td -> innertext == $search){ $td->innertext = ''; } } echo $tds; 

在这种情况下,变量$ search似乎不起作用

有什么办法可以通过simple_html_dom做到这一点?

我想也许您的意思是下一个兄弟姐妹。

您获得了下一个兄弟姐妹:

$td->next_sibling()

所以要获得第三个:

$td->next_sibling()->next_sibling()->next_sibling()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM