Извлечение доменных имен из субдоменов в 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.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3