Press "Enter" to skip to content

PHP get URL from HTML: Estrarre i links di una pagina html con l’oggetto DOM di PHP5

Se abbiamo necessità, nella nostra applicazione web, di estrarre tutti i link presenti in una pagina web, una soluzione comoda è quella di utilizzare l’oggetto DOM di PHP5.

Vediamo come realizzare una semplice funzione che, tramite la classe DOMDocument, restituisce gli attributi href e text sottoforma di array multidimensionale:

function getUrlFromHTML($url) {
 
    $xml = new DOMDocument();
 
    @$xml->loadHTMLFile($url);
 
    $links = array();
 
    foreach($xml->getElementsByTagName('a') as $link) {
        $links[] = array('url' => $link->getAttribute('href'), 'text' => $link->nodeValue);
    }
 
    return $links;
}
 
$arr = getUrlFromHTML("https://www.emawebdesign.com");

Servendoci di un ciclo FOR, ecco come possiamo visualizzare il contenuto dell’array:

for ($i=0;$i<count($arr);$i++) {
echo $arr[$i]["url"] ."<br />";
echo $arr[$i]["text"] ."<br />";
}

Semplice e comodo 😉

Condividi l'articolo con i tuoi amici

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *