Потеря переменной в двойной конструкции switch
Здравствуйте.
Есть "двухэтажная" конструкция switch
switch ($p){
default:
switch ($m){
case 'some':
// somecode
$var = "foo";
break;
// somecode
}
break;
//somecode
}
В результате исолнения кода в switch($m)
"теряются" переменные. Т.е. при дальнейшем их использовании они становятся null , хотя явно обозначаются как $var = "foo"
В чем может быть дело? Это нормальное поведение подобных конструкций или что? Ибо без нее в данном случае - никак.
Проблемная часть
case 'faq':
$title = " - F.A.Q";
switch($_GET['mode']){
default:
$title = "BRS F.A.Q";
echo $tpl->result['head'];
break;
case 'auth_key': break;
}
break;
Теряется $title
. Собственно в остальных случаях, где нет подконструкции, всё корректно исполняется.