通过嵌套的if()语句传递变量值 - PHP

时间:2017-08-08 16:59:46

标签: php

我希望能够执行以下操作但无法执行,因为值未传递到下一个if语句。

if(something){
  $x=SomeValue;
    if(something){
      $y=SomeValue;
       if($x==$y){
         echo"x & y matches";
       }
     }
}

我也在相应的$GLOBALS声明中尝试if,但仍然无效。

如何传递$x&的值? $y到第三个if()声明

实际代码

if($i%2) {
        $dx1 = $row['sec1'];
        echo $dx1;
        if($i%2==0){
            $dx2 = $row['sec2'];
            echo $dx2;
            if($dx1==$dx2){echo $dx1." do not match ".$dx2;}
        }
    }
}

1 个答案:

答案 0 :(得分:4)

在PHP中,任何“为空”的值都被视为“真实”;在整数的情况下,这意味着0为假,其他一切都为真。因此if($i%2)if( $i % 2 != 0 )相同。

稍后,您将嵌入if看起来相似的条件if($i%2==0),实际上正好相反。要到达内部if,您必须首先进入外部if,因此两个条件都必须为真才能到达最里面的代码。

正如你所说,条件相当于“$ i is odd”和“$ i is even”。要进入第一个if语句,$i必须是奇数;但要进入第二个,它必须是偶数。 $i的任何值都不会满足这两个条件,因此永远不会达到最内层的代码。