Dakle, trebam da napravim f-ju/metod koja cupa domain deo iz url-a. Dakle, za url tipa:
nesto.perajoe.com/foo/index.php?pera=2&joe=3
trebam da dobijem perajoe.com.
E sad, sex je sto ovo treba da radi i sa cctld ekstenzijama, tipa .es, ve i sl...
tipa:
nesto.perajoe.com.es/foo/index.php?pera=2&joe=3
nesto.novo.ca/foo/index.php?pera=2&joe=3
itd.
Dakle nesto ovako:
PHP kôd:
/**
* Remove data from url except domain name
* subdomains are handled too but only for tld's
*
* @param string url
* @return string domain name
*/
function getDomainFromUrl($url)
{
//trim everything after / first
$domain = preg_replace("/\/.*/", '', $url);
if(substr_count($domain, '.') == 1)
{
return $domain;
}
//we have subdomain or some cctld extension
//check if domain is tld
if(preg_match("/\.(com|net|org|biz|info|mobi|name)$/", $domain))
{
//extract only domain part
preg_match("/.+\.([a-zA-Z0-9\-]+\.(com|net|org|biz|info|mobi|name))$/", $domain, $matches);
//var_dump($matches);
$domain = $matches[1];
}
else
{
//remove www part if there is such and return domain back
$domain = preg_replace("/^www\./", '', $domain);
}
return $domain;
}
Ali treba da podrzava i cctld's.