php – Switch multiple case statement

php – Switch multiple case statement

This format is shown in the PHP docs:

switch (i) {
    case 1:
    case 3:
        code block A;
        break;
    case 2:
        code block B;
        break;
    default:
        code block default;
        break;
}

EDIT 04/19/2021:

With the release of PHP8 and the new match function, it is often a better solution to use match instead of switch.

For the example above, the equivalent with match would be :

$matchResult = match($i) {
    1, 3    => // code block A
    2       => // code block B
    default => // code block default
}

The match statement is shorter, doesnt require breaks and returns a value so you dont have to assign a value multiple times.

Moreover, match will act like it was doing a === instead of a ==. This will probably be subject to discussion but it is what it is.

Something like this

switch(i) {
    case 1:
    case 3:  {code block A; break;}

    case 2:  {code block b; break;}

    default: {code block default; break;}
}

php – Switch multiple case statement

Something like

    $i = 10;
    switch($i){
        case $i == 1 || $i > 3:
            echo working;
            break;
        case 2:
            echo i = 2;
            break;
        default: 
          echo i = $i;
          break;
    }

Leave a Reply

Your email address will not be published.