public function index() { if (GetSettValue("ipblock_lang") == 1 && substr_count($_SERVER["HTTP_ACCEPT_LANGUAGE"], 'zh-cn') > 0) { $this->redirect('Ipblock/login'); } $ipLocatoin = IpLocation::getInstance(); $result = $ipLocatoin->init($this->ipdatafile)->getcity($ipLocatoin->get_client_ip()); $address = $result['country'] . $result['area']; $ip = $result['ip']; $city = GetSettValue("ipblock_city"); $cityinfo = unserialize($city); //$cityinfo[]='本机地址'; foreach ($cityinfo as $k => $v) { if (substr_count($address, $v) > 0 || substr_count($ip, $v) > 0) { $this->redirect('Ipblock/login'); } } setcookie("ipblock", 0, time() + 3600 * 6, "/"); //不在范围 }
function get_ip_area($ip) { import('ORG.Net.IpLocation'); $ipLocatoin = IpLocation::getInstance(); $result = $ipLocatoin->init(__ROOT__ . "./Public/ipdata/ip.dat")->getcity($ip); return $result['country'] . $result['area']; }