Как оставить от текста ссылки только часть доменного имени
Пытаюсь сделать так, чтобы при вводе в форму https://site.ru или www.site.ru, https://site.ru/page1/page2 и тд., средствами php выводило только site.ru. Может это можно сделать путем каких-либо плагинов, например masked input или preg_match и регулярными выражениями. Только не совсем хорошо в этом разбираюсь. Заранее спасибо.
Ответы (1 шт):
Автор решения: InDevX
→ Ссылка
function getLink($url){
if (substr($url, 0, 4) === 'www.') {
$url = str_replace('www.', '//', $url);
} else if (parse_url($url, PHP_URL_HOST) == null) {
$url = "//".$url;
}
return parse_url($url, PHP_URL_HOST);
}
var_dump( getLink('http://stackoverflow.com/questions/36564293/extract-urls-from-a-string-using-php') );
var_dump( getLink('https://stackoverflow.com/questions/36564293/extract-urls-from-a-string-using-php') );
var_dump( getLink('www.stackoverflow.com/questions/36564293/extract-urls-from-a-string-using-php') );
var_dump( getLink('stackoverflow.com/questions/36564293/extract-urls-from-a-string-using-php') );