Получить элементы DOM по имени тега с помощью DOMDocument:: loadHTML и getElementsByTagName

Извините, если это было отправлено повторно, но я не могу обдумать его, и я пробовал всю доступную документацию и примеры, которые я мог найти.

Я пытаюсь получить первый элемент img строки, содержащей HTML

PHP

$html = '<p><img src="http://placekitten.com/200/300" alt="" width="200" height="300" /></p>';
$dom = new DOMDocument;
$dom->loadHTML($html);
$imgs = $dom->getElementsByTagName('img');
var_dump($imgs);

Это накладывает object(DOMNodeList)#57 (0) { }, когда он должен найти одно вхождение.

Я тоже пробовал с XPath.

Ответ 1

Используйте это:

$img = $dom->getElementsByTagName('img')->item(0);
echo $img->attributes->getNamedItem("src")->value;