Mutlak URL'ler için php dönüştürmek tüm linkler

1 Cevap php

I am writing a website crawler in php and I already have code that can extract all links from a site. A problem: sites use a combination of absolute and relative urls. Examples (http replaced with hxxp as I can't post hyperlinks):

hxxp :/ / site.com /

site.com

site.com / index.php

hxxp :/ / site.com / Merhaba / index.php

/ Merhaba / index.php

hxxp :/ / site2.com/index.php

site2.com/index.php

(Onlar göreli / mutlak varsa) bağlantıları üzerinde hiçbir kontrole sahip, ama ben onları takip etmek gerekiyor. Ben mutlak URL'ler içine tüm bu bağlantıları dönüştürmek gerekir. Ben bu php nasıl yapabilirim?

1 Cevap

İşte bir başlangıç

// Your crawler was sent to this page.
$url = 'http://example.com/page';

// Example of a relative link of the page above.
$relative = '/hello/index.php';

// Parse the URL the crawler was sent to.
$url = parse_url($url);

if(FALSE === filter_var($relative, FILTER_VALIDATE_URL))
{
    // If the link isn't a valid URL then assume it's relative and
    // construct an absolute URL.
    print $url['scheme'].'://'.$url['host'].'/'.ltrim($relative, '/');
}

Mutlak bir çapa yaratma başka yolu olarak http_build_url yöntem haline bir bakın.