PHP Aus URL Domainname auslesen ?

Du kannst es z. B. mit explode() oder mit preg_match() machen

PHP:
$url1 = 'http://www.google.de/intl/de/about.html';
$domainname1 = explode('.', $url1);
echo $domainname1[1] . '<br>';

$url2 = 'google.de/intl/';
$domainname2 = explode('.', $url2);
echo $domainname2[0];

Bei beiden kommt als Ausgabe google

Äh, ja parse_url() gibt es auch noch:

PHP:
$url1 = 'http://www.google.de/intl/de/about.html';
$domain = parse_url($url1);
echo $domain[host];
Ausgabe: www.google.de
 
Zuletzt bearbeitet:
http://www.php.net/manual/en/function.parse-url.php

PHP:
$host = parse_url($url, PHP_URL_HOST);
$splitHost = explode('.',$host);
$cnt = count($splitHost);
// nur google:
echo $splitHost[$cnt-2];
// google.de
echo $splitHost[$cnt-2].'.'.$splitHost[$cnt-1];

Die Methode von excalibur1976 ist nicht wirklich nutzbar, da man es ja automatisch braucht und man bei einem reinen explode schwer automatisch feststellen kann, welchen Array-Eintrag man denn nun braucht.
 
Zuletzt bearbeitet:
Vor allem weil deine Lösung nun mal überhaupt nicht funktioniert.
was ist z.B. mit http://maps.google.com? Bei deiner Lösung wäre die Domain ja maps - quatsch. Domain ist google.com
 
1668mib schrieb:
Vor allem weil deine Lösung nun mal überhaupt nicht funktioniert.
was ist z.B. mit http://maps.google.com? Bei deiner Lösung wäre die Domain ja maps - quatsch. Domain ist google.com

Es war ein Lösungsansatz! Warum sollte ich bis ins Detail hier jemanden den Code vorkauen, wenn er bereits entsprechende Lösungsansätze - nicht komplette Lösungen - angeboten bekommen hat?

Will er nur google, will er domain + tld oder subdomain.domain.tld erhalten?

Ergo: Was man aus den Ansätzen macht, das ist dann die Frage was man genau will!
 
Letztes Array-Element ist die TLD (de, com, ...)
Vorletztes die Domain (zb google)
Vorvorletztes die Subdomain (zb maps)
usw.

Achtung: Es gibt die Ausnahme bei co.uk (zb www.sun.co.uk)
 
@excalibur1976: Weil der Lösungsansatz nun mal ne Sackgasse ist...
Wieso denn das Rad neu erfinden wenn es für solche Zwecke ne vorgegebene PHP-Funktion gibt?
 
Ja, soweit wie die einzige php funktion wäre ich jetzt auch mit meinen codeschnipsel.

P.S. Das mit der Doppeldomainendung (z.B. de.com) war (wäre) auch mein problem gewesen.

Aber wenns nicht ander´s geht, kann man nix machen......

Trotzdem danke.
 
Zurück
Oben