Avatar billede fredie89 Nybegynder
08. august 2006 - 08:52 Der er 7 kommentarer og
1 løsning

Find alle links i på en side

Hvordan gør man det? Jeg har lige lidt kode først:

<?

$file =fopen("http://fredie89.dk/index.php", "r");

while (!feof($file)){

$output = fgets($file, 4096);
echo $output;
}
fclose($file);
?>
Avatar billede gizmo-gizmo Nybegynder
08. august 2006 - 12:00 #1
<?php
$file = fopen("http://fredie89.dk/index.php", "r");

while(!feof($file))
{
    $output .= fgets($file, 4096);
}
fclose($file);

preg_match_all("/<a[^>]*>(.*?)<\/a>/si", $output, $regs);
$links = $regs[1];

?>

Så bliver $links et array med alle links.
Avatar billede coderdk Praktikant
08. august 2006 - 13:21 #2
$file = fopen("http://fredie89.dk/index.php", "r");
while(!feof($file))
{
    $output .= fgets($file, 4096);
}
fclose($file);

kan i øvrigt udskiftes med:

$output = file_get_contents( "http://fredie89.dk/index.php" );
Avatar billede fredie89 Nybegynder
09. august 2006 - 17:41 #3
Hovsa, det er URLen vi skal finde!
Avatar billede coderdk Praktikant
09. august 2006 - 17:48 #4
Prøv med:

preg_match_all("/<a.*?href=['\"](.*?)['\"].*?>.*?<\/a>/si", $output, $regs);
Avatar billede fredie89 Nybegynder
09. august 2006 - 18:01 #5
Hvad med uden "? Og hvad med '? Dur det også?
Avatar billede coderdk Praktikant
09. august 2006 - 22:08 #6
Ikke forstået?
Avatar billede gizmo-gizmo Nybegynder
10. august 2006 - 11:37 #7
Jeg tror han mener både  href='url', href=url og href="url"

Hvis dine url's kan være uden " eller ', så hedder det:
preg_match_all("/<a.*?href=['\"]?(.*?)['\"]?.*?>.*?<\/a>/si", $output, $regs);
(utestet)
Avatar billede mogens8000 Seniormester
06. april 2016 - 11:39 #8
Hej

Hvor putter man koden hen så det kan give output.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester