首页 > php学习 > php如何随机生成一个国内的IP呢

php如何随机生成一个国内的IP呢

2013年9月23日 发表评论 阅读评论

今天由于项目需要,特意做了一个功能,php随机生成一个国内的IP地址,实现代码如下:

$ip_long = array(
array(‘607649792′,’608174079’),//36.56.0.0-36.63.255.255
array(‘1038614528′,’1039007743’),//61.232.0.0-61.237.255.255
array(‘1783627776′,’1784676351’),//106.80.0.0-106.95.255.255
array(‘2035023872′,’2035154943’),//121.76.0.0-121.77.255.255
array(‘2078801920′,’2079064063’),//123.232.0.0-123.235.255.255
array(‘-1950089216′,’-1948778497′),//139.196.0.0-139.215.255.255
array(‘-1425539072′,’-1425014785′),//171.8.0.0-171.15.255.255
array(‘-1236271104′,’-1235419137′),//182.80.0.0-182.92.255.255
array(‘-770113536′,’-768606209′),//210.25.0.0-210.47.255.255
array(‘-569376768′,’-564133889′),//222.16.0.0-222.95.255.255
);
function curl_file_get_contents($remoteUrl){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $remoteUrl);
curl_setopt($ch, CURLOPT_TIMEOUT, 8);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}

$rand_key=mt_rand(0,9);
$ip=long2ip(mt_rand($ip_long[$rand_key][0],$ip_long[$rand_key][1]));
$sinaIP=json_decode(curl_file_get_contents(‘http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=’.$ip),true);
$ipcity=$sinaIP[‘province’].$sinaIP[‘city’].($sinaIP[‘isp’]?’/’.$sinaIP[‘isp’]:”);

die($ip.”<br />”.$ipcity);

由此可以生成随机的IP,并获得城市名称。

分类: php学习 标签: ,
  1. 本文目前尚无任何评论.
您必须在 登录 后才能发布评论.
css.php