2009-10-22 55 views
0

我已經存儲在兩個字符串部分字符串對比

兩個IP地址值
a = '116.95.123.111' 
b = '116.95.122.112' 

我只想IP地址的前兩個部分的兩個字符串比較,即116.95一部分,因爲它是在同一這兩個字符串我的比較應該返回true。如何在PHP中做這個部分字符串比較?

回答

4

IP不會忽略可能包含前導零。爆炸時,可以將它們作爲整數進行比較,以便忽略前導零。

$a = "116.95.123.111"; 
$b = "116.095.123.111" // same IP as $a, but with leading zero 

的 「乾淨」 的方式則是,這樣的事情...

$ip1 = explode(".", $a); 
$ip2 = explode(".", $b); 

if (($ip1[0] == $ip2[0]) && (ip1[1] == $ip2[1])) { 
    // success. Do something 
} else { 
    // not valid 
} 
4

(比較IP地址)

if((ip2long($a) >> 16) == (ip2long($b) >> 16)) echo "equal";