是否可以使用DOMDocument查询前5个图像?

Is it possible to query the first 5 images with DOMDocument?

$dom = new DOMDocument;
       $list = $dom->query('img');

With XPath You can fetch all images like this:

$xpath = new DOMXPath($dom);
$list = $xpath->query('//img');

Then you limit the results by only iterating over the first five.

for ($i = 0, $n = min(5, $list->length); $i < $n; ++$i) {
    $node = $list->item(0);
}

XPath is very versatile thanks to its expression language. However, in this particular case, you may not need all that power and a simple $list = $dom->getElementsByTagName('img') would yield the same result set.

You can use getElementsByTagName to build and array of images:

$dom = new DOMDocument();
$dom->loadHTML($string);
$images = $dom->getElementsByTagName('img');
$result = array();
for ($i=0; $i<5; $i++){
    $node = $images->item($i);
    if (is_object( $node)){
        $result[] = $node->ownerDocument->saveXML($node);
    }
}