您的位置:

ip段转换php,ip段是什么

本文目录一览:

php 怎样将有范围的ip转化为整型范围

?php

$ip = $_SERVER["REMOTE_ADDR"]; // 获取客户端IP

$longip = ip2long($ip);

// 程序员通常将 IP 转换成整形写入数据库

// 读取的时候再把它转成标准的 IP 地址

$ip = long2ip($longip);

echo 'pre';

print_r(array($longip = $ip));

?

php怎样把ip地址转化为坐标

转化不了。只能根据ip获取地理位置,并不能转化为经纬度。如今的ip性质还没办法做到

PHP通过掩码和IP计算IP地址段

不知道你要的IP地址段是IP地址列表,还是只要一个起始地址,我就当你是前一种的意思,如果你只是要范围的话也很简单,下面有代码自己改了。

首先说一点,从你贴出的内容来看,你对子网掩码还是存在误解,至少我可以肯定的告诉你,255.0.240.0 绝对不会是一个有效的子网掩码。如果你不清楚的话,可以百度下,百科里面有很详细的讲解,我就不班门弄斧了。下面是代码,你可以根据需要进行修改(如果有难以理解的,可以先了解下什么是子网掩码):

// $ip是IP地址,$subnetMask是子网掩码的IP地址

function getSubNetIPList($ip, $subnetMask)

{

// 将ip地址和子网掩码转换为整数

$ipNum = ip2long($ip);

$subnetMaskNum = ip2long($subnetMask);

// 下面的计算需要必须能够了解子网掩码的相关知识

// 计算网络号对应的整数(此地址为此网段的起始地址,但是是表示网段,所以不能分给主机使用)

$netNum = ($ipNum $subnetMaskNum);

// 计算网段结束IP地址(此地址此网段的结束IP地址,但是是广播地址,所以不能分给主机使用)

$broadcastIPNum = $netNum | (~$subnetMaskNum);

// 所以,我们知道,能够使用的IP地址是由网络号加1,知道广播地址减1

// 那么,可用的IP地址列表就很简单了

$ipAddrs = array();

for ($num = $netNum + 1; $num = $broadcastIPNum - 1; $num++) {

$ipAddrs[] = long2ip($num);

}

return $ipAddrs;

}

$ips = getSubNetIPList("219.244.64.0", "255.255.248.0");

print_r($ips);