Codice PHP:
$criterio='#<(a|A).*?href="(.*?)"#';
$stringa = file_get_contents("http://google.ch");
preg_match_all($criterio, $stringa, $risultato);
foreach ($risultato[2] as $ris) { echo $ris.'
'; };
Restituirà i link contenuti nell'array $risultato[2], e saranno quindi:
$risultato[1][0]
$risultato[1][1]
$risultato[1][2]
ecc...
Attenzione, però!
Funziona solo se l'indirizzo è contenuto in un codice tipo ...<a .... href="#LINK#"....>....
E se hai abilitato la possibilità di "scaricare" il codice html di siti esterni...
Oppure...
Codice PHP:
<?php $oldSetting = libxml_use_internal_errors( true ); libxml_clear_errors(); $html = new DOMDocument(); $html->loadHtmlFile( 'http://google.ch' ); $xpath = new DOMXPath( $html ); $links = $xpath->query( '//a' ); foreach ( $links as $link ) { echo $link->getAttribute( 'href' ), "\n"; } libxml_clear_errors(); libxml_use_internal_errors( $oldSetting ); ?>
Questa potrebbe essere un'altra possibilità.
In entrambi i casi ho preso d'esempio http://google.ch