我试图抓住这个:
<a id="pa1">Site1</a>
<font size="-1">Text1</font><br />
<font size="-1" color="green">Text2</font><br />
我很容易得到pa1 ..但是我想找到之后的两种字体..所以我用过这个:
$html = new simple_html_dom();
$html->load($document);
foreach ($html->find('#pa1>font') as $e) {
$this->check_line_two = $this->process_array_elements($e->innertext);
}
foreach ($html->find('#pa1>font>font') as $e) {
$this->check_line_three = $this->process_array_elements($e->innertext);
}
两者都不起作用。如何使用简单的html dom获取下一个元素?
答案 0 :(得分:2)
font
内没有后代#pa1
- 标记。
您显然正在寻找的是兄弟选择器+
:#pa1 + font
。但我不知道你使用的库是否支持它。
答案 1 :(得分:2)
foreach ($html->find('#pa1') as $e) {
$firstFontElement = $e->next_sibling();
}
答案 2 :(得分:0)
如果这就是您要废弃的全部内容,为什么不选择字体标记。
foreach ($html->find('font') as $e) {
$this->check_line_two = $this->process_array_elements($e->innertext);
}
或者文档中是否存在更多字体标记?