PHPで簡単にリファラ(参照元)の取得と、リファラからドメイン名を抜き出す方法を紹介。

リファラの取得

$_SERVER['HTTP_REFERER'];
これを使うとどのサイトから遷移してきたのか判別することができます。

URL文字列からドメイン名を取得

parse_url

ドメイン以外にも色々URLを解析して取得できます。
parse_url - PHP マニュアル
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r(parse_url($url));

上の例の出力

Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)

$_SERVER['HTTP_REFERER']とparse_urlを組み合わせる

$url = $_SERVER['HTTP_REFERER'];
$url = parse_url($url);
echo $url['host'];