首頁 > php教程 > php手册 > 获取在线ip

获取在线ip

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-06 19:34:39
原創
1670 人瀏覽過

获取在线ip 无 function getonlineip($format=0) {global $_SGLOBAL;if(empty($_SGLOBAL['onlineip'])) {if(getenv('HTTP_CLIENT_IP') strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {$onlineip = getenv('HTTP_CLIENT_IP');} elseif(getenv('HTTP_X_FOR

获取在线ip

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

function getonlineip($format=0) {

    global $_SGLOBAL;

 

    if(empty($_SGLOBAL['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'];

        }

        preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);

        $_SGLOBAL['onlineip'] = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';

    }

    if($format) {

        $ips = explode('.', $_SGLOBAL['onlineip']);

        for($i=0;$i<3;$i++) {

            $ips[$i] = intval($ips[$i]);

        }

        return sprintf('%03d%03d%03d', $ips[0], $ips[1], $ips[2]);

    } else {

        return $_SGLOBAL['onlineip'];

    }

}

登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板