我已經存儲在兩個字符串部分字符串對比
兩個IP地址值a = '116.95.123.111'
b = '116.95.122.112'
我只想IP地址的前兩個部分的兩個字符串比較,即116.95
一部分,因爲它是在同一這兩個字符串我的比較應該返回true。如何在PHP中做這個部分字符串比較?
我已經存儲在兩個字符串部分字符串對比
兩個IP地址值a = '116.95.123.111'
b = '116.95.122.112'
我只想IP地址的前兩個部分的兩個字符串比較,即116.95
一部分,因爲它是在同一這兩個字符串我的比較應該返回true。如何在PHP中做這個部分字符串比較?
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
}
substr_compare
是二進制安全的。
(比較IP地址)
if((ip2long($a) >> 16) == (ip2long($b) >> 16)) echo "equal";