Linux Install Memo

サーバー管理者によるLinux関連ソフトのインストールメモ

Home » □PHPでIPv4かIPv6かの判定

□PHPでIPv4かIPv6かの判定

こ、これでいいのか!?!?

<?
#
# アクセス元アドレスがIPv4かIPv6か判定する
#
$ADDR = $_SERVER["REMOTE_ADDR"];

# REMOTE_ADDRがIPv4フォーマットなら
if (preg_match("/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/", $ADDR))
{
$IPKIND = "IPv4";
}
elseif (preg_match("/^[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}:[a-f0-9]{1,4}$/", $ADDR))
{
$IPKIND = "IPv6";
}

#
print <<<EOF
<HTML>
<HEAD>
<TITLE>IPv4/IPv6 確認サイト | FVG-ON.NET</TITLE>
<LINK href="site.css" rel=stylesheet type=text/css>
</HEAD>
<BODY CLASS="content12">
<BR>
REMOTE_ADDR = <FONT CLASS="content18">{$ADDR}, You are {$IPKIND}!</FONT>,
<BR>
</BODY>
</HTML>
EOF;

?>

Name of author

Name: admin

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です