Comment obtenir le texte d'Ancrage à l'aide de DomDocument?
Dire que j'ai ce code html:
<a href="http://example.com">Test</a>
Je l'analyser en utilisant le dom document avec ce code:
$dom = new DomDocument();
@$dom->loadHTML($html);
$urls = $dom->getElementsByTagName('a');
Et puis j'exécute ce code:
foreach ($urls as $url)
{
//echo "<br> {$url->getAttribute('href')} , {$url->getAttribute('title')}";
foreach ($url->attributes as $a)
{
echo "<br>$a->name is $a->value";
}
echo "<hr><br>";
}
Quand je fais cela, je ne vois 'href' comme un attribut de l'url, il n'y a aucun moyen d'obtenir le "texte d'ancre" (dans le cas ci-dessus, 'Test'). Comment puis-je obtenir de l'ancre texte du lien?
Vous devez vous connecter pour publier un commentaire.
Utilisation
DOMNode::$nodeValue
:Le texte "Test" est en fait un DOM nœud de Texte de sorte que vous pouvez aller chercher le contenu en passant par les enfants des nœuds de $url.
Vous pouvez consulter ce post pour solution: Comment obtenir innerHTML de DOMNode?