如何在多个相同的类名之间选择第二个元素


How to select second element between multiple identical classname?

我有一个这样的结构:

<div class="test">
    <span>one</span>
</div>
<div class="test">
    <span>two</span>
</div>
<div class="test">
    <span>three</span>
</div>

这是我的代码:

foreach($html->find('div[class=test]') as $article) {
    echo $type .= $article->find('span',0)->plaintext."<br>";
}

这是当前的结果:

one
two
three

这是预期结果:

two

我该怎么做?


注意:我使用这个PHP库。

$data = $html->find('div[class=test]', 1);
echo $type .= $data->find('span',0)->plaintext."<br>";

这应该打印您想要的内容,因为 1 是要选择的第二个div元素(从 0 开始,所以第一个 = 0,第二个 = 1)。

你可能想看看我的软件包PHPHTMLQuery。

使用作曲家安装后,您可以像这样做同样的事情:

$content= '<div class="test">'.
    '<span>one</span>'.
'</div>'.
'<div class="test">'.
    '<span>two</span>'
'</div>'.
'<div class="test">'.
    '<span>three</span>'.
'</div>';
$document = new AbdelilahLbardi'PHPHTMLQuery'Getter($content);
$elements = $document->withTag('div')
                     ->withClass('test')
                     ->select();
foreach($elements as $element){
    var_dump($element);
}