我的转储变量显示在他们的页面上:
if ($_SERVER['REMOTE_ADDR'] == '44.71.45.98' OR '44.71.45.99') {
//blah blah
}else{
//blah
}
我知道这是错的,但是当我尝试..我正在为我的另一台电脑工作。即使我知道这是错误的,也没有提示我错误...
通常我会编码或喜欢这些:
//this is correct
if(isset($a) or isset($b)){
}
答案 0 :(得分:6)
是的,它应该是:
if ($_SERVER['REMOTE_ADDR'] == '44.71.45.98' or $_SERVER['REMOTE_ADDR'] == '44.71.45.99') ...
'或'(或'||')将布尔(true或false)表达式组合在一起(例如使用'=='进行比较)。在您的原始代码中,它将第二个IP字符串转换为布尔值 - 值为true - 因此if语句将始终匹配。
答案 1 :(得分:4)
if (
$_SERVER['REMOTE_ADDR'] == '44.71.45.98'
OR
$_SERVER['REMOTE_ADDR'] == '44.71.45.99'
)
答案 2 :(得分:3)
你的表情不正确。它应该是这样的:
if ($_SERVER['REMOTE_ADDR'] == '44.71.45.98' OR
$_SERVER['REMOTE_ADDR'] == '44.71.45.99')
99%的开发者如何做到这一点:
if ($_SERVER['REMOTE_ADDR'] == '44.71.45.98' ||
$_SERVER['REMOTE_ADDR'] == '44.71.45.99')
答案 3 :(得分:3)
我更喜欢使用IP数组(如果不止一个)
if(in_array($_SERVER['REMOTE_ADDR'], array('44.71.45.98', '44.71.45.99', etc))
答案 4 :(得分:2)
这里你需要使用逻辑OR运算符..
你的代码应该是这样的..
if($_SERVER['REMOTE_ADDR'] == '44.71.45.98' || $_SERVER['REMOTE_ADDR'] == '44.71.45.99'){
code if condition is true..
}
else{
code if condition is false..
}
也可以这样做..
if($_SERVER['REMOTE_ADDR'] == '44.71.45.98' or $_SERVER['REMOTE_ADDR'] == '44.71.45.99')
答案 5 :(得分:2)
我更喜欢使用||作为OR运算符。代码应该是:
if ($_SERVER['REMOTE_ADDR'] == '44.71.45.98' || $_SERVER['REMOTE_ADDR'] == '44.71.45.99')