php: ip2long returning negative val

后端 未结 6 834
灰色年华
灰色年华 2020-12-30 04:18
function ip_address_to_number($IPaddress) { 
     if(!$IPaddress) {
      return false;
     } else {
      $ips = split(\'\\.\',$IPaddress);
      return($ips[3] +          


        
6条回答
  •  甜味超标
    2020-12-30 04:39

    You can use -

    // IP Address to Number
    function inet_aton($ip)
    {
        $ip = trim($ip);
        if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) return 0;
        return sprintf("%u", ip2long($ip));  
    }
    
    // Number to IP Address
    function inet_ntoa($num)
    {
        $num = trim($num);
        if ($num == "0") return "0.0.0.0";
        return long2ip(-(4294967295 - ($num - 1))); 
    }
    

提交回复
热议问题