Te falta el break en los 'case' del primer switch, el switch padre. El break permite salir de una estructura, ¡pero solo de una!
Código PHP:
Ver originalswitch($uno)
{
case 1:
switch($dos)
{
case 2:
//...
break;
case 3:
//...
break;
default:
//...
break;
}
break; //Te falta este break para salir del switch padre y evitar que entre en 'case 2:'
case 2:
switch($tres)
{
case 3:
//...
break;
case 4:
//...
break;
default:
//...
break;
}
break;
}
Otra forma es usando un número después del break. Este número indica el número de estructuras de las que queremos salir.
Código PHP:
Ver originalswitch($uno)
{
case 1:
switch($dos)
{
case 2:
//...
break 2;
case 3:
//...
break 2;
default:
//...
break 2;
}
case 2:
switch($tres)
{
case 3:
//...
break 2;
case 4:
//...
break 2;
default:
//...
break 2;
}
}