Depende en algo de lo que vas a hacer con esas condiciones.
Sin saber lo que hacen las condiciones (que permitirian otro tipo de optimización), una forma es crear una mascara de bits.
Código PHP:
Ver original$varsToCheck=array("var1","var2","var3"....); $mask=0;
for($k=0;$k<count($varsToCheck);$k++) $mask |= (isset($
{$varsToCheck[$k]}))?
( 1 << $k):0; switch($mask)
{
case 1: { ... }break;// solo var1
case 2: { ... }break; // solo var2
case 3: { ... }break; // var1 y var2
}
Pero, como te digo ,esto es un metodo generico.
Habría que ver si lo que haces en las condiciones es conmutativo...o independiente entre sí..