缩写 php if/or 语句


Abbreviate php if/or statement

有没有办法缩写以下内容?

if ($chk == 1 || $chk == 3 || $chk == 5 || $chk == 7){
do some stuff
}

谢谢。

if (in_array($chk, array(1, 3, 5, 7))) ... 

或者,如果您计划包含 if-elseif-cascades,请使用 switch 语句:

switch($chk)
{
  case 1: case 3: case 5: case 7: 
    do_something();
    break; 
  case 10: case 30: case 50: case 70: 
    do_something_else();
    break; 
  default: 
    do_default();
}

如果仅使用偶数,则可以检查该值。如果值不均匀,则将执行该函数

$unevenNumbers=array(1,2,3,4,5,7);
foreach($unevenNumbers as $nbr){
    if( $nbr % 2 !== 0){
        //do some stuff
    }
}

如果你看起来很奇怪!

if (!(($chk % 2)==0)  // can use if($chk&1) instead
{
 //odd acess
}
 else
{
 //even stuff
}

if($num&1) 
{
    //odd stuff
} 
else 
{
    //even stuff
}

或某些事物逻辑

if($num&1) 
{
    //odd stuff
      if($num>=1 && $num<=7)
                  {//your special stuff 
                  }
} 
else 
{
    //even stuff
}

您可以使用三元运算符。

in_array($chk, array(1, 3, 5, 7)) ? /* Do some stuff*/;
<?php
$arr = array(1, 3, 5, 7);
if (in_array($chk, $arr)) {
    // DO SOMETHING
}