我已经对此进行了测试并且它工作正常,但它看起来...很奇怪...对我来说。我是否应该担心这是一种非标准形式,将在未来的 PHP 版本中删除,或者它可能会停止工作?我总是将默认情况作为最终情况,而不是第一种情况......
switch($kind)
{
default:
// The kind wasn't valid, set it to the default
$kind = 'kind1';
// and fall through:
case 'kind1':
// Do some stuff for kind 1 here
break;
case 'kind2':
// do some stuff for kind2 here
break;
// [...]
case 'kindn':
// do some stuff for kindn here
break;
}
// some more stuff that uses $kind here...
(以防万一,我想做的是确保 $kind 有效,因此默认为:case。但是开关也执行一些操作,然后 $kind 也在开关之后使用。那是为什么默认:落入第一种情况,并且还设置 $kind)
建议?这是正常/有效的语法吗?
最佳答案
这是一个不寻常的成语,它会在您阅读它时引起一点停顿,即“嗯?”的片刻。它有效,但大多数人可能希望在最后找到默认情况:
switch($kind)
{
case 'kind2':
// do some stuff for kind2 here
break;
// [...]
case 'kindn':
// do some stuff for kindn here
break;
case 'kind1':
default:
// Assume kind1
$kind = 'kind1';
break;
}
关于php - 默认作为 switch 语句中的第一个选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1241695/