«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как извлечь корневые доменные имена из поддоменов в PHP?

Как извлечь корневые доменные имена из поддоменов в PHP?

Опубликовано 25 ноября 2024 г.
Просматривать:865

How to Extract Root Domain Names from Subdomains in PHP?

Извлечение доменных имен из субдоменов в PHP

В PHP получение корневого доменного имени из субдомена является распространенной задачей. Рассмотрим сценарий, в котором вы столкнулись с такими переменными:

here.example.com
example.com
example.org
here.example.org

Вы хотите преобразовать эти значения в их корневые доменные имена, например example.com или example.org. Для этого необходима хорошо продуманная функция.

Решение

В следующем фрагменте кода показана функция get_domain(), которая эффективно извлекает имя корневого домена:

function get_domain($url)
{
  $pieces = parse_url($url);
  $domain = isset($pieces['host']) ? $pieces['host'] : '';
  if (preg_match('/(?P[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)) {
    return $regs['domain'];
  }
  return false;
}

Эта функция использует встроенную функцию parse_url() для разбиения URL-адреса и получения компонента хоста. Впоследствии он использует регулярное выражение для проверки и извлечения имени корневого домена, гарантируя, что оно соответствует общим соглашениям об именах доменов.

Вызвав get_domain() с нужным URL-адресом, вы можете легко изолировать имя корневого домена. :

print get_domain("http://somedomain.co.uk"); // outputs 'somedomain.co.uk'

В случаях, когда URL-адрес не соответствует приемлемым структурам домена, функция корректно обрабатывает эти крайние случаи, возвращая false.

Заявление о выпуске Эта статья перепечатана по адресу: 1729555699. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3