Analysera en adress med PHP och parse_url

Ibland kan det finnas anledning att få fram delarna i en URL. Det finns flera olika anledningar till att man vill plocka ut värd eller port. Jag har själv använt denna funktionen ganska ofta, främst när jag vill visa en adress lite snyggare.

Till exempel kan https://plus.google.com/116193550187889527606/about enkelt visas som "Inlägg från plus.google.com"

Funktionen är parse_url och är väldigt enkel att använda. Du behöver endast skicka in en URL i konstruktorn, funktionen returnerar därefter en array med de olika delarna. Det finns även möjlighet att skicka in en andra parameter för att endast få tillbaka vissa delar av adressen.

print_r(parse_url("http://baronen.org:80?s=search#top"));
Array
(
    [scheme] => http
    [host] => baronen.org
    [port] => 80
    [query] => s=search
    [fragment] => top
)

Du kan även använda den på till exempel en ftp-adress. Då får du ut information om användarnamn, lösenord etc.

print_r(parse_url("ftp://username:password@myftpserver.se:2121/home/my_user_dir"));
Array
(
    [scheme] => ftp
    [host] => myftpserver.se
    [port] => 2121
    [user] => username
    [pass] => password
    [path] => /home/my_user_dir
)

Hoppas du får användning av funktionen någon gång.

3 thoughts on “Analysera en adress med PHP och parse_url”

Din kommentar eller åsikt