PHP PCアクセス制限
アクセス振り分けPHPですが、
以下のように直してみました。
ですが、
↓こんなエラーが出てしまいました。
Parse error: syntax error, unexpected '}' in /index.php on line 89
<?php
if (isDoCoMoIP()) {
}
if (isAuIP()) {
}
if (isSoftBankIP()) {
}
function isDoCoMoIP(){
require_once 'Net/IPv4.php';// PEAR Net_IPv4
{
//DoCoMo のIP帯域をセット
$ip_list = array(
'210.153.84.0/24',
'210.136.161.0/24',
'210.153.86.0/24',
'124.146.174.0/24',
'124.146.175.0/24'
);
foreach ($ip_list as $ip) {
if (Net_IPv4::ipInNetwork($_SERVER['REMOTE_ADDR'], $ip)) {
print "DoCoMo";
return true;
}
}
}
}
function isAuIP(){
require_once 'Net/IPv4.php';// PEAR Net_IPv4
{
// au のIP帯域をセット
$ip_list = array(
'210.230.128.224/28',
'121.111.227.160/27',
'61.117.1.0/28',
'219.108.158.0/27',
'219.125.146.0/28',
'61.117.2.32/29',
'61.117.2.40/29',
'219.108.158.40/29',
'219.125.148.0/25',
'222.5.63.0/25',
'222.5.63.128/25',
'222.5.62.128/25',
'59.135.38.128/25',
'219.108.157.0/25',
'219.125.145.0/25',
'121.111.231.0/25',
'121.111.227.0/25',
'118.152.214.192/26',
'118.159.131.0/25',
'118.159.133.0/25'
);
foreach ($ip_list as $ip) {
if (Net_IPv4::ipInNetwork($_SERVER['REMOTE_ADDR'], $ip)) {
print "au";
return true;
}
}
}
}
function isSoftBankIP(){
require_once 'Net/IPv4.php';// PEAR Net_IPv4
{
//SoftBank のIP帯域をセット
$ip_list = array(
'123.108.236.0/24',
'123.108.237.0/27',
'202.179.204.0/24',
'202.253.96.224/27',
'210.146.7.192/26',
'210.146.60.192/26',
'210.151.9.128/26',
'210.169.130.112/28',
'210.175.1.128/25',
'210.228.189.0/24',
'211.8.159.128/25'
);
foreach ($ip_list as $ip) {
if (Net_IPv4::ipInNetwork($_SERVER['REMOTE_ADDR'], $ip)) {
print "SoftBank";
return true;
}
}
}
}
return false;
}
print "PC";
?>
補足
IPアドレスをホスト名変換してみたら、レンタルサーバーのIPでした。。。 ちなみにレンタルサーバーはロリポップです。 なぜ、プライベートIPが取得されるかは、まだ謎です;;