《XiunoPHP 4.0开发手册》全局变量$ip

来源:TechTMT.Com  作者:整理  日期:2020-12-27 14:30:10

XiunoPHP全局变量$ip

客户端的 IP 地址,格式为:202.106.0.20 。

在开启 CDN 后,它会获取 CDN 转发过来的 IP 。

【定义】 文件:xiunophp/misc.func.php:

$ip = ip();

【用例】

<?php
    include './xiunophp/xiunophp.php';
    echo $ip; // 127.0.0.1
?>

【ip()】

// 不安全的获取 IP 方式,在开启 CDN 的时候,如果被人猜到真实 IP,则可以伪造。
function ip() {
    global $conf;
    $ip = '127.0.0.1';
    if(empty($conf['cdn_on'])) {
        $ip = $_SERVER['REMOTE_ADDR'];
    } else {
        if(isset($_SERVER['HTTP_CDN_SRC_IP'])) {
        $ip = $_SERVER['HTTP_CDN_SRC_IP'];
    } elseif(isset($_SERVER['HTTP_CLIENT_IP'])) {
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    } elseif(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
        $arr = array_filter(explode(',', $ip));
        $ip = end($arr);
    } else {
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    }
    return long2ip(ip2long($ip));
}

稿源:TechTMT.Com综合整理!

分类:文章
标签:XiunoPHP
编辑:tmt
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。文章版权归原作者所有,内容不代表本站立场!
免责声明: 阁下应知本站所提供的内容不能做为操作依据。本站作为信息内容发布平台,不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考! 如文中内容影响到您的合法权益(含文章中文字、图片等),请及时联系本站,我们会及时删除处理。