获取客户端IP地址,第一种:
function get_client_ip($type = 0) {
	$type       =  $type ? 1 : 0;
    static $ip  =   NULL;
    if ($ip !== NULL) return $ip[$type];
    if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $arr    =   explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
        $pos    =   array_search('unknown',$arr);
        if(false !== $pos) unset($arr[$pos]);
        $ip     =   trim($arr[0]);
    }elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
        $ip     =   $_SERVER['HTTP_CLIENT_IP'];
    }elseif (isset($_SERVER['REMOTE_ADDR'])) {
        $ip     =   $_SERVER['REMOTE_ADDR'];
    }
    // IP地址合法验证
    $long = sprintf("%u",ip2long($ip));
    $ip   = $long ? array($ip, $long) : array('0.0.0.0', 0);
    return $ip[$type];
}
获取客户端IP地址,第二种:
function getIp(){
    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) {
        $ip = getenv("HTTP_CLIENT_IP");
    } elseif (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) {
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    } elseif (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) {
        $ip = getenv("REMOTE_ADDR");
    } elseif (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
        $ip = $_SERVER['REMOTE_ADDR'];
    } else {
        $ip = "unknown";
    }
    return ($ip);
}
第三种:
public function ipip(){
    $url='http://www.baidu.com/s?wd=ip';
    // $str=$this->httpsRequestlison($url,'');
    $str=file_get_contents($url);
    $getinfo=explode('本机IP: ',$str);
    $str=substr($getinfo[1],0,30);
    preg_match_all('/\d+.\d+.\d+.\d+/', $str, $result);
    var_dump($result);exit;

}
function httpsRequestlison($url, $data = null){
    $ch = curl_init();
    //设置url
    curl_setopt($ch, CURLOPT_URL, $url);
    //设置curl_exec方法的返回值,结果返回,不自动输出任何内容
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    if(!empty($data)){
        //发送post请求,
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    }
    //跳过ssl检查项
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    //发送请求
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}
其他:
echo $_SERVER['REMOTE_ADDR'].'<br>';
echo $_SERVER['HTTP_CLIENT_IP'].'<br>';
echo $_SERVER['HTTP_X_FORWARDER_FOR'].'<br>';
echo $_SERVER['SERVER_ADDR'].'<br>';