dotty
dotty

Reputation: 41433

PHP Switch with 2 values

is there a way to the php's SWITCH but with 2 values? Here's what I'm looking for

switch(a, b){
    case 1,2: some code... ; break;
    case 3,4: some code... ; break;
    case 3,6: some code... ; break;
    case 5,2: some code... ; break;
    case 1,3: some code... ; break;
    case 8,5: some code... ; break;
}

I know this won't work, so how would i do something along these lines?

Upvotes: 6

Views: 229

Answers (2)

Paul
Paul

Reputation: 141827

You could use an array with 2 elements since == comparison checks the array values:

$a = 3;
$b = 6;

switch([$a, $b]){
    case [1, 2]: echo '1'; break;
    case [3, 4]: echo '2'; break;
    case [3, 6]: echo '3'; break;
    case [5, 2]: echo '4'; break;
    case [1, 3]: echo '5'; break;
    case [8, 5]: echo '6'; break;
}

Outputs 3.

Upvotes: 12

Ghazanfar Mir
Ghazanfar Mir

Reputation: 3543

You could use some string instead if it isn't heavy processing:

$variable= "1,2";

switch($variable){
    case "1,2": some code... ; break;
    case "3,4": some code... ; break;
    case "3,6": some code... ; break;
    case "5,2": some code... ; break;
    case "1,3": some code... ; break;
    case "8,5": some code... ; break;
}

Upvotes: 2

Related Questions