我想在php中获取前3个部分的ip地址。
例如,让我们将IP地址视为
"1.2.3.4";
然后我想得到
"1.2.3";
提前致谢。
答案 0 :(得分:5)
您可以这样做以获得前3个部分:
$nums = explode(".", "1.2.3.4") ;
echo $nums[0]. "." .$nums[1]. "." .$nums[2] ;
或者您也可以这样做:
$ip = "1.2.3.4";
$dotPosition = strrpos($ip, '.'); //getting position of the last dot
echo substr($ip, 0, $dotPosition); //getting the characters until that position.
答案 1 :(得分:3)
$nums = explode(".", "1.2.3.4") ;
echo "{$nums[0]}.{$nums[1]}.{$nums[2]}" ; //echoes 1.2.3
答案 2 :(得分:2)
答案 3 :(得分:2)
$ip = "1.2.3.4";
$nums = explode(".",$ip) ;
echo $nums[0].".".$nums[1].".".$nums[2] ;
答案 4 :(得分:1)
这是一个功能:
function GetFirstThree($ip) {
if(strlen($ip) <= 10) {
$pos = strpos($ip, '.', strlen($ip)-3);
} else {
$pos = strpos($ip, '.', strlen($ip)-4);
}
$ip = substr($ip, 0, $pos);
$ip = substr($ip, 0, strlen($ip));
return $ip;
}
echo GetFirstThree("127.0.0.1");
答案 5 :(得分:0)
$ip = "1.2.3.4"
$firstThreeOctetOfIp = implode('.', array_slice(explode('.', $ip), 0, 3)); // "1.2.3"
explode
获取具有 4 个值的数组的 IParray_slice
获取具有所需值的数组implode
从最终数组中获取字符串