Heim >Backend-Entwicklung >PHP-Tutorial >Wie extrahiere ich Stammdomänennamen aus Subdomänen in PHP?
Domänennamen aus Subdomänen in PHP extrahieren
In PHP ist das Abrufen des Stammdomänennamens aus einer Subdomäne eine häufige Aufgabe. Stellen Sie sich ein Szenario vor, in dem Sie auf Variablen wie diese stoßen:
here.example.com example.com example.org here.example.org
Sie möchten diese Werte in ihre Stammdomänennamen umwandeln, z. B. example.com oder example.org. Um dies zu erreichen, ist eine gut ausgearbeitete Funktion erforderlich.
Lösung
Das folgende Snippet zeigt eine Funktion namens get_domain(), die den Stammdomänennamen effektiv extrahiert:
<code class="php">function get_domain($url) { $pieces = parse_url($url); $domain = isset($pieces['host']) ? $pieces['host'] : ''; if (preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)) { return $regs['domain']; } return false; }</code>
Diese Funktion nutzt die integrierte Funktion parse_url(), um die URL aufzuschlüsseln und die Hostkomponente abzurufen. Anschließend wird ein regulärer Ausdruck verwendet, um den Root-Domain-Namen zu validieren und zu extrahieren, um sicherzustellen, dass er den gängigen Domain-Namenskonventionen entspricht.
Durch den Aufruf von get_domain() mit der gewünschten URL können Sie den Root-Domain-Namen mühelos isolieren :
<code class="php">print get_domain("http://somedomain.co.uk"); // outputs 'somedomain.co.uk'</code>
In Fällen, in denen die URL nicht den akzeptablen Domänenstrukturen entspricht, behandelt die Funktion diese Randfälle ordnungsgemäß, indem sie „false“ zurückgibt.
Das obige ist der detaillierte Inhalt vonWie extrahiere ich Stammdomänennamen aus Subdomänen in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!