IF嵌套如何优化写法?

原创
2016-06-23 13:24:42 1055浏览

像这样的IF条件还能再怎么写好,应该不能用switch,毕竟要判断时间、次数、IP等条件。
if(访问时间段){
echo "正常时间段";
if(ID范围){
echo "正常ID范围";
if(访问次数){
echo "正常访问次数";
if(IP地址){
echo "正常IP地址";
}else{
echo "错误IP地址";
}
}else{
echo "访问次数过多";
}
}else{
echo "错误ID范围";
}
}
else{
echo "请注意休息";
}


回复讨论(解决方案)

平行的写法

while(true) {  if(访问时间段){    echo "正常时间段";  }else {    echo "请注意休息";    break;  }  if(ID范围){    echo "正常ID范围";  }else {    echo "错误ID范围";    break;  }  if(访问次数){    echo "正常访问次数";  }else {    echo "访问次数过多";    break;  }  if(IP地址){    echo "正常IP地址";  }else{    echo "错误IP地址";    break;  }  break;}

$error = 0;if(访问时间段){     echo "正常时间段";else{    $error = 1;    echo "请注意休息";}if($error==0 && ID范围){    echo "正常ID范围";}else{    $error = 1;    echo "错误ID范围";}if($error==0 && 访问次数){    echo "正常访问次数";}else{    $error = 1;    echo "访问次数过多";}if($error==0 && IP地址){    echo "正常IP地址";}else{    $error = 1;    echo "错误IP地址";}

二楼的平行结构很好理解,三楼的没用过哦……

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。