如何使用Simple HTML Dom 获取相邻的兄弟元素?
How to use Simple HTML Dom to get an adjacent sibling element?
我正在使用简单 HTML Dom 解析器从 HTML 字符串中获取一个元素,使用它的 class 名称,例如:
foreach ($html->find('div[class=news-div]')) {
$news = $news-div;
}
但我还需要获取两个元素(一个是 span
,另一个是 a
),它们恰好出现在 $news
之前,但它们没有 id
可以预测,因为它是动态计算的,并且它们没有唯一的 class
名称。
如何提取出现在 $news-div
之前的两个相邻元素?
SimpleHTML 有 prev_sibling
和 next_sibling
方法
$elems = $html->find('div[class=news-div]');
foreach ( $elems as $news ) {
$prev_span = $news->prev_sibling();
$prev_a = $prev_span->prev_sibling();
}
我正在使用简单 HTML Dom 解析器从 HTML 字符串中获取一个元素,使用它的 class 名称,例如:
foreach ($html->find('div[class=news-div]')) {
$news = $news-div;
}
但我还需要获取两个元素(一个是 span
,另一个是 a
),它们恰好出现在 $news
之前,但它们没有 id
可以预测,因为它是动态计算的,并且它们没有唯一的 class
名称。
如何提取出现在 $news-div
之前的两个相邻元素?
SimpleHTML 有 prev_sibling
和 next_sibling
方法
$elems = $html->find('div[class=news-div]');
foreach ( $elems as $news ) {
$prev_span = $news->prev_sibling();
$prev_a = $prev_span->prev_sibling();
}