【问题标题】:PHP simplify if else statementsPHP 简化 if else 语句
【发布时间】:2015-02-02 20:02:12
【问题描述】:

我有下面的代码,如果两个值都为真,则执行其他操作,如果两个值中的一个为真,则执行其他操作,如果另一个为真,则执行其他操作,如果两者都不为真,则执行其他操作。 但是我觉得必须有更简单的方法。

$value1 = true;
$value2 = false;

if ($value1 && $value2){
    do something
} else if ($value1){
    do something else
} else if ($value2){
    do another something
} else {
    do final other thing
}

有什么方法可以用更少的 if/else 语句更好地表示这个逻辑

【问题讨论】:

  • 不,没有更好的方法,因为您使用的是 2 个变量。
  • 已经简化了。没有办法进一步简化它。

标签: php logic


【解决方案1】:

您可以执行如下所示的内联条件:

$value1 = true;
$value2 = false;

($value1 && value2)? do 1 : ($value)? do 2 : ($value2)?  do 3 : do 4;

这不是更好的方法,但它仍然是另一种方法:)

【讨论】:

    【解决方案2】:

    其他方式:

    $a = true;
    $b = false;
    
    $ab = (int) $a . (int) $b;
    switch($ab){
        case '00': echo '1'; break;
        case '01': echo '2'; break;
        case '10': echo '3'; break;
        case '11': echo '4'; break;
    }
    

    不是更好,但有时更容易阅读。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-23
      • 1970-01-01
      • 2011-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-26
      • 2013-08-18
      相关资源
      最近更新 更多