Как из введенной ссылки типа abc.domain.ru в переменную получить abc ??

WD
На сайте с 16.09.2009
Offline
109
206

Добрый день.

Перешерстил кучу сайтов, но простого решения нигде не увидел.

Есть сайт domain.ru

У него есть несколько поддоменов aaa.domain.ru  bbb.domain.ru ccc.domain.ru

Пользователь обращается к сайту введя к примеру адрес bbb.domain.ru

Мне нужно в переменную получить субдомен, то есть что бы была $SubDom была равна bbb и при выводе на экран echo $SubDom; выводилось на экран bbb

Через $_SERVER['SERVER_NAME'] я получаю полный адрес сайта

Субдоменов типа www у данного ресурса не будет. Поэтому надо получить домен 3-го уровня.

Из того что нашел в инете - куча конструкций с ненужными проверками на 20-30 строк кода.

Kaavain
На сайте с 28.07.2015
Offline
135
#1

Берем для level.mydomain.tld

$pref = strtok( $_SERVER['HTTP_HOST'], '.');

if ( $pref != 'mydomain') {

делайчтохошь;

}

Можно универсальнее, чтобы работало для произвольного домена, но оно надо? например можно попробовать так типа так:

$pref = rtrim(str_replace ($_SERVER['SERVER_NAME'], '',$_SERVER['HTTP_HOST']), '.');
if ($pref) {
делайчехошь;
}
Могу порекомендовать только хостинг: https://traf.at/vps - за 3 года все на 4++ и цены не подняли. Ну и банк для белых ИП: https://traf.at/bankm
W1
На сайте с 22.01.2021
Offline
289
#2
White Devil :
Мне нужно в переменную получить субдомен, то есть что бы была $SubDom была равна bbb и при выводе на экран echo $SubDom; выводилось на экран bbb

Если это на PHP - то выбирай нужную функцию - например substr(), или explode(), или  strtoc() на худой конец - и обрабатывай свою строку. Какие тут проблемы и зачем тут какие-то "инструкции" из интернета?

Мой форум - https://webinfo.guru –Там я всегда на связи
WD
На сайте с 16.09.2009
Offline
109
#3
webinfo #:
Если это на PHP - то выбирай нужную функцию - например substr(), или explode(),

Спасибо. explode() оказалось тем что нужно

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий