从DOM中的特定元素中提取属性

时间:2011-04-13 14:03:29

标签: php html parsing

我希望只能在html文件中提取第二个图像的src。我正在使用PHP DOM解析器:

foreach($html->find('img[src]') as $element)
        $src = $element->getAttribute('src');
        echo $src;

但是,我收到了页面中最后一张图片的src,而不是我要找的图片。

我是否可以仅显示src循环之外的特定foreach

2 个答案:

答案 0 :(得分:4)

您的循环缺失{},相当于

foreach($html->find('img[src]') as $element) {
        $src = $element->getAttribute('src');
}
echo $src;

所以,echo在循环的最后一次迭代后得到$ src,这是最后一个元素。

答案 1 :(得分:1)

使用他们网站上的例子,我会选择这个(括号是关键):

$count = 1;
foreach($html->find('img') as $element) {
   if ($count == 2) {
     echo $element->src;
     break;
   }
   $count += 1;
}