У меня есть код примерно такой:
function someFunction($myKey){
switch($myKey){
case 'equals':
$condition = '=';
break;
case 'notequals':
$condition = '!=';
break;
default:
$condition = 'like';
break;
}
return $condition;
}
echo someFunction(1); // output 'like' good
echo someFunction('equals'); // output '=' also good
echo someFunction(0); // but here output '=' why ?
echo someFunction(true); // and here also '=' why ?
Как я уже прокомментировал, почему 0
и true
переходят на первый случай вместо значения по умолчанию?
Хотя я исправляю это просто приведение $myKey
к строке перед условием переключения
но мне любопытно, что я здесь не так сделал.