Como obter texto Anchor usando o DomDocument?

Diga que eu tenho esse html:

Test 

Eu analiso isso usando o documento dom com este código:

 $dom = new DomDocument(); @$dom->loadHTML($html); $urls = $dom->getElementsByTagName('a'); 

E então eu executo este código:

 foreach ($urls as $url) { //echo "
{$url->getAttribute('href')} , {$url->getAttribute('title')}"; foreach ($url->attributes as $a) { echo "
$a->name is $a->value"; } echo "

"; }

Quando eu faço isso, eu só vejo ‘href’ como um atributo da url, não há como obter o ‘texto âncora’ (no caso acima ‘Teste’). Como posso obter o texto âncora do link?

 foreach ($urls as $url) { $attributes = $url->attributes; echo "
$url->nodeValue is $attributes->href"; }

Use DOMNode::$nodeValue :

 echo $url->nodeValue; 

O texto “Teste” é, na verdade, um nó de texto do DOM, para que você possa buscar o conteúdo passando pelos nós infantis de $ url.

Você pode verificar esta postagem para solução: como obter innerHTML de DOMNode?

 here is two line code may it help some one $html = file_get_html($link); foreach($html->find("a") as $key=>$val) { echo $val->src; echo '\n'; }