Как добавить несколько случаев условий внутри метода Switch?

Есть ли способ включить несколько случаев внутри метода переключения в php?

Оператор switch работает, оценивая каждое выражение case в свою очередь и сравнивая результат с выражением switch . Если два выражения эквивалентны, блок case выполняется (в пределах ограничений, установленных конструкциями break / continue ). Вы можете использовать этот факт для включения произвольных булевых выражений в выражения case . Например:

 <?php $i = 3; $k = 'hello world'; switch (true) { case 3 == $i and $k == 'hi there'; echo "first case is true\n"; break; case 3 == $i and $k == 'hello world'; echo "second case is true\n"; break; } //switch ?> 

Эти результаты:

 second case is true 

Я не использую такую ​​конструкцию очень часто (вместо этого предпочитаю избегать такой сложной логики), но иногда она возникает там, где в противном случае может быть использована сложная операция if-then и может сделать такие фрагменты намного проще для чтения.

Что случилось с просто гнездовыми переключателями?

 $i = 1; $j = 10; switch($i) { case 2: echo "The value is 2"; break; case 1: switch($j) { case 10: echo "Exception Case"; break; default: echo "The value is 1"; break; } break; default: echo "Invalid"; break; } 

Да, это возможно

Вот пример, чтобы начать с

 <? $i = 1; $j = 10; switch($i) { case "2": echo "The value is 2"; break; case ($i==1 && $j==10): echo "Your exceptional Switch case is triggered"; break; default: echo "Invalid"; break; } ?>