Maison >développement back-end >tutoriel php >Comment obtenir l'URL source de la première image dans un document HTML ?

Comment obtenir l'URL source de la première image dans un document HTML ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-06 15:40:13188parcourir

How to Get the Source URL of the First Image in an HTML Document?

Comment extraire l'URL source de la première image dans un document HTML

Extraire l'URL source (valeur SRC) de la première image dans un document HTML peut être réalisé en utilisant plusieurs approches, notamment :

Utilisation de DOMDocument et DOMXPath :

Cette approche utilise les classes DOMDocument et DOMXPath pour naviguer et manipuler la structure HTML. En créant un nouvel objet DOMDocument, en y chargeant le HTML et en utilisant DOMXPath pour évaluer le chemin '/img/@src', vous pouvez obtenir la valeur SRC de la première image.

Exemple :

$html = '<img border="0" src="/images/image.jpg" alt="Image" width="100" height="100" />';

$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
$src = $xpath->evaluate("string(//img/@src)");

Utilisation de SimpleXMLElement::xpath():

Pour un approche plus concise, vous pouvez combiner la manipulation de DOMDocument et SimpleXMLElement::xpath():

Exemple :

$xpath = new DOMXPath(@DOMDocument::loadHTML($html));
$src = $xpath->evaluate("string(//img/@src)");

Utilisation de SimpleXMLImportDom() et array_shift():

Cette approche simplifie davantage le processus, en tirant parti de SimpleXMLImportDom() pour convertir le DOMDocument dans un SimpleXMLElement et en utilisant array_shift() pour extraire le premier élément :

Exemple :

$src = (string) reset(simplexml_import_dom(DOMDocument::loadHTML($html))->xpath("//img/@src"));

Indépendamment de l'approche choisie, ces techniques fournissent des méthodes efficaces pour récupérer la valeur de l'attribut SRC de la première balise d'image apparaissant dans un document HTML.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn