PHP - Host (bzw. Domain) aus URL (Link) extrahieren

Hin und wieder ergibt sich die Notwendigkeit, aus einer Internetadresse (sog. URL) nur die Domain auszuschneiden.

Ein Beispiel wäre aus
http://www.phpbox.de/tipsundtricks/url-erkennen-verlinken.php
nur die Domain
phpbox.de
zu erhalten.

Dies läßt sich mit einer Regex erledigen, kann aber auch mit einer geschickten Kombination von parse_url vollbracht werden:

Um die Anwendung einfacher zu machen, ist das Ganze in eine Funktion verpackt:

function getHost($url) {
$parseUrl = parse_url(trim($url)); return trim($parseUrl[host] ? $parseUrl[host] : array_shift(explode('/', $parseUrl[path], 2))); }

In der Anwendung sieht die Funktion wie folgt aus:

getHost("phpbox.de");
getHost("http://phpbox.de");
getHost("www.phpbox.de");
getHost("subdomain.phpbox.de");
getHost("http://phpbox.de/datei.php");

Ergebnis: