首頁 >後端開發 >php教程 >php获取客户端外网/公网IP的代码_PHP教程

php获取客户端外网/公网IP的代码_PHP教程

WBOY
WBOY原創
2016-07-13 17:44:231115瀏覽

冷锋:两种方法都可用,第一种要利用内置的curl支持,第二种比较通用。建议使用第二种。
方法一:curl

function get_onlineip() {
$ch = curl_init(http://www.ip138.com/ip2city.asp);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$a = curl_exec($ch);
preg_match(/[(.*)]/, $a, $ip);
return $ip[1];
}

方法二:$_SERVER[HTTP_X_FORWARDED_FOR]来获取相应的地址

function get_onlineip() {
$onlineip = ;
if(getenv(HTTP_CLIENT_IP) && strcasecmp(getenv(HTTP_CLIENT_IP), unknown)) {
$onlineip = getenv(HTTP_CLIENT_IP);
} elseif(getenv(HTTP_X_FORWARDED_FOR) && strcasecmp(getenv(HTTP_X_FORWARDED_FOR), unknown)) {
$onlineip = getenv(HTTP_X_FORWARDED_FOR);
} elseif(getenv(REMOTE_ADDR) && strcasecmp(getenv(REMOTE_ADDR), unknown)) {
$onlineip = getenv(REMOTE_ADDR);
} elseif(isset($_SERVER[REMOTE_ADDR]) && $_SERVER[REMOTE_ADDR] && strcasecmp($_SERVER[REMOTE_ADDR], unknown)) {
$onlineip = $_SERVER[REMOTE_ADDR];
}
return $onlineip;
}

echo get_onlineip();
?>

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478747.htmlTechArticle冷锋:两种方法都可用,第一种要利用内置的curl支持,第二种比较通用。建议使用第二种。 方法一:curl function get_onlineip() { $ch = curl_init...
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn