PHPでURLを解析してみる。

与えられたURLを解析して、ホスト名やドメイン、IPアドレスなどを取得したい時用。

$url = 'http://example.com/';
$res = parse_url($url);

var_dump($res);
↓
array(3) {
	["scheme"]=>
	string(4) "http"
	["host"]=>
	string(11) "example.com"
	["path"]=>
	string(1) "/"
}

parse_url()を使うとそのURLから特定できる情報を配列で返してくれる。
続けてIPアドレスを取得したい場合は以下の通り。

$ip = gethostbyname($res['host']);
		
var_dump($ip);
↓
string(14) "93.184.216.119"

gethostbyname()に上部で取得したホスト名を渡してやることでIPアドレスに変換してくれる。

以下おまけ。

ドメインを取得する。

$domain = end(explode('.', $res['host']));

var_dump($domain);
↓
string(3) "com"