Как прочитать текст и URL ссылки с помощью DOMDocument?

#php

#php

Вопрос:

У меня есть этот html:

 <a href=" URL TO KEEP" class="class_to_check">
<strong> TEXT TO KEEP</strong>
</a>
  

У меня длинный html-код со многими ссылками, как указано выше, я должен сохранить ссылки, которые <strong> находятся внутри, я должен сохранить HREF ссылки и текст внутри <strong> , как я могу использовать DOMDocument ?
Спасибо!

Ответ №1:

 $html = "...";
$dom = new DOMDOcument();
$dom->loadHTML($html);

$xp = new XPath($dom);

$a = $xp->query('//a')->item(0);
$href = $a->getAttribute('href');
$strong = $a->nodeValue;
  

Конечно, этот материал XPath работает только для этого конкретного фрагмента html. Вам нужно будет настроить его для работы с более заполненным HTML-деревом.

Комментарии:

1. Я собирался предложить XPath 🙂

2. ребята, как я могу распечатать весь узел, чтобы увидеть, какой html-код находится внутри?

3. DOMDocument не имеет собственной настройки типа .innerHTML, но вы можете подделать ее, согласно этому комментарию на сайте PHP: php.net/manual/en/book.dom.php#105815