【问题标题】:Optimize if-statement to check values优化 if 语句以检查值
【发布时间】:2014-12-07 07:49:09
【问题描述】:

如何优化这个 if 语句?

if ($min && $max && $value && ($min <= $max) && ($min <= $value) && ($value <= $max)) {
    // do anything
}

应该怎么做:

我得到了三个值(最小值、最大值和值)。首先,所有值都应该是!= 0。其次,min

有效:

min = 1; max = 3; value = 2;
min = 2; max = 2; value = 2;

【问题讨论】:

  • 我认为不需要优化它,因为它由简单的布尔比较组成。它以当前的形式可读且清晰。
  • (已编辑关于零值的评论 - 您已经提到并正确解决)
  • 您可以取消对($min &lt;= $max) 的检查,因为您正在使用($min &lt;= $value) &amp;&amp; ($value &lt;= $max) 间接检查。
  • 好的,谢谢。我觉得这句话有点长。
  • 当你觉得if 条件链太长时,函数就有意义了;另见if integer between a range?

标签: php


【解决方案1】:

这个:

if ( 0 < $min && $min <= $value && $value <= $max ){
    echo 'good';
}

【讨论】:

    【解决方案2】:

    我认为这可以防止任何值成为 0,并确保值在最小和最大范围内。

    if ( ( $min > 0 && $max >= $min ) && ( $value >= $min && $value <= $max ) ) {
      echo "Good";
    } else {
      echo "Bad";
    }
    

    【讨论】:

      【解决方案3】:

      答案是:

      if(isset($min , $max , $value ) && ($min <= $value) && ($value <= $max)){
      //Insert your code here
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-21
        • 2011-05-18
        • 2010-09-07
        • 2013-09-17
        • 2017-06-16
        • 1970-01-01
        相关资源
        最近更新 更多