代码之家  ›  专栏  ›  技术社区  ›  Dogbert

Ruby与PHP中or条件的处理

  •  1
  • Dogbert  · 技术社区  · 16 年前

    我不知道该怎么称呼这个,所以我举个例子。

    在PHP中

    1==2 || 2 退货 1 或 true

    红宝石色

    退货 2 (如果第一个语句的计算结果为false,则为第二个语句)。

    3 回复  |  直到 15 年前
        1
  •  1
  •   newacct    16 年前

    怎么样

    1==2 ? 1==2 : 2
    

    1==2 ?: 2
    
        2
  •  0
  •   Artefacto    16 年前

    在PHP中,布尔表达式的结果总是布尔值。所以呢 1==2 || 2 给予 true .

    ($var = 1 == 2) || ($var = 2)
    

    那么 $var 2 .

    根据Matchu问题的答案,您可能需要:

    (($var = 1) == 1) || ($var = 2)
    

    ($var = 1 == 1) || ($var = 2)
    
        3
  •  0
  •   treznik    16 年前

    怎么样 1 == 2 or 2

    但是,如果直接打印,结果可能不一样,因此需要将结果放入变量中。举个例子:

    $result = "a" or 2;
    var_dump($result); // prints string(1) "a"
    
    var_dump("a" or 2); // prints bool(true)
    

    请看这里: http://www.php.net/manual/en/language.operators.logical.php

    推荐文章