Почему в PHP SWITCH со случаем 0 ведет себя так глупо?
Я слышал, что переключатель php использует свободное сравнение. Но какова логика такого поведения:
$var = 'default';
switch ( $var ) {
case 1:
echo '1';
break;
case 2:
echo '2';
break;
case 0:
echo 'unexpected, huh!';
break;
default:
echo 'default';
}
Он повторяет результат в случае 0! Почему он считает, что строка "по умолчанию" равна 0?
Извините за мой английский!