ホームページ > バックエンド開発 > PHPチュートリアル > PHPでサブドメインからルートドメインを抽出するにはどうすればよいですか?

PHPでサブドメインからルートドメインを抽出するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-22 08:13:30
オリジナル
268 人が閲覧しました

How to Extract Root Domain from Subdomains in PHP?

PHP: サブドメインからルート ドメインを抽出する

ドメイン名を操作する場合、多くの場合、ルート ドメインをサブドメインから分離する必要があります。さまざまなドメイン構造を含む変数を考えてみましょう:

here.example.com
example.com
example.org
here.example.org
ログイン後にコピー

私たちのタスクは、これらすべてのバリエーションを、「example.com」や「example.org」などの対応するルート ドメインに変換する関数を作成することです。

正規表現を使用した解決策

<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>
ログイン後にコピー

説明:

  • parse_url() は URL をそのコンポーネントに分解します。ドメイン名を含みます。
  • 正規表現は、キャプチャ グループ ((?P...))) を使用してルート ドメインのみを抽出します。
  • このパターンにより、ドメインは次で構成されます:

    • 英数字またはハイフン
    • サブドメインの最大長は 63 文字
    • ドットで区切られた 2 ~ 6 文字の拡張子 (TLD)

使用例:

<code class="php">echo get_domain("http://somedomain.co.uk"); // Outputs 'somedomain.co.uk'</code>
ログイン後にコピー

以上がPHPでサブドメインからルートドメインを抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート