4

嗨,我正在使用代码从 url 地址获取所有图像的地址。我想问我怎么才能得到第一个结果而不是所有匹配?

这是我正在使用的代码:

<?php


$url="http://grabo.bg/relaks-v-pamporovo-0gk5b";

$html = file_get_contents($url);

$doc = new DOMDocument();
@$doc->loadHTML($html);

$tags = $doc->getElementsByTagName('img');

foreach ($tags as $tag) {
   echo $tag->getAttribute('src');
}

?>

所以请告诉我如何才能得到一个结果——第一个!

提前致谢。

4

3 回答 3

7

$tags是由's方法DOMNodeList创建的对象。因此,您可以访问使用 . 返回的第一个元素。 DOMDocumentgetElementsByTagNameDOMNodelist::item ( int $index )

对于您的代码,请执行以下操作:$tags->item(0);

于 2013-08-07T12:56:56.740 回答
0

小心一些浏览器选择返回HTMLCollection,这没关系,因为它是NodeList的超集。
请参阅HTMLCollection、NodeList 和对象数组之间的区别

于 2013-08-07T13:06:29.777 回答
-1

利用:

$tags = $doc->getElementsByTagName('img')[0];

获取数组中的第一个元素。

于 2013-08-07T12:51:22.670 回答